THINKPHP中配置伪静态Liunx (URL重写)规则
什么是伪静态?简单说就是将动态的url变成静态的url显示,就叫做伪静态。“伪”就是假的,不是真的静态url,是通过技术手段实现的。用户只要开通无忧php虚拟空间就支持url重写功能,无需其它任何设置,我们使用伪静态的好处,就是可以优化网络引擎,提高网站权重。将网站静态化处理,是网站seo优化非常重要的一个工作。Thinkphp也可以通过技术手段,实现伪静态处理。
满足thinkphp伪静态(url重写)条件:
1、 服务器开启url_rewrite功能,linux空间的php虚拟主机只需要开启apache的mod_rewriet,如果是iis6.0就要安装ISAPI Rewrite模块,apache只要开启Mod_rewrite功能就可以了。万网是linux系统的空间,开通空间默认支持。
2、 Linux空间编辑.htaccess文件,windows空间编辑httpd.ini文件。
thinkphp如何编写.htaccess文件?
万网Liunx主机编写的thinkphp伪静态正则表达式.htaccess文件如下:
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]
WIN主机IIS 6.0编写的thinkphp伪静态正则表达式httpd.ini 文件如下:
[ISAPI_Rewrite]
# 3600 = 1 hour
CacheClockRate 3600
RepeatLimit 32
RewriteRule ^(.*)/Office/index.php/(.*)\.html$ $1/Office/index\.php\?s=$2 [I]
RewriteRule ^(.*)/Search/index.html\?name\=(.*)$ $1/index\.php/Search/index.html\?name=$2 [I]
RewriteRule ^(.*)/Common/verify.html\?(.*)$ $1/index\.php/Common/verify.html\?$2 [I]
RewriteRule ^(.*)/(Feedback|Inquiry)/$ $1/index\.php\?s=$2 [I]
RewriteRule ^(.*?)/((?!sitemap).*)\.html$ $1/index\.php\?s=$2 [I]
请将上面正则表达式,保存为.htaccesss文件,并放到thinkphp项目入口文件同级目录下。
并且修改数据库配置(config.php)文件使网站支持url重写功能,加入代码:define(‘URL_REWRITE’,2);