满足thinkphp伪静态(url重写)条件:
1、 服务器开启url_rewrite功能,linux空间的php虚拟主机只需要开启apache的mod_rewriet,如果是iis6.0就要安装ISAPI Rewrite模块,
apache只要开启Mod_rewrite功能就可以了。
2、需要编写.htaccess文件(Linux服务器下),windows2003以下服务器空间编辑httpd.ini文件,windows2008以上使用web.config文件。
在linux空间下编写的.htaccess文件采用Thinkphp官方文档,代码如下:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
本站在windows2003以下的服务器空间编写的Httpd.ini文件代码如下:
[ISAPI_Rewrite]
CacheClockRate 3600
RepeatLimit 32
RewriteRule /(?!Public)(?!include)(?!Uploads)(.*) /index.php//$1 [L]
注:(?!Public) 是指这些文件夹不需要进行伪静态,因为这些路径是保存图片和css、js文件的。
在windows2008的服务器使用以下代码,保存的文件名为web.config
根据不同的空间,请将上面的伪静态规则,保存为.htaccesss文件或Httpd.ini或web.config文件,并放到ThinkPHP项目入口文件同级目录下。
ThinkPHP要修改数据库配置(config.php)文件使网站支持url重写功能,配置代码:
'URL_MODEL'=>2,//兼容模式 不支持伪静态时用,支持则改为2