伪静态配置

标签作用:配置程序伪静态后URL中将不再包含兼容模式的问号,整个地址更美观,也便于推广优化。

适用版本:2.X 、3.X

1、IIS7+环境(IIS6的环境自行百度):

1)安装rewrite组件,如果使用空间一般空间商默认已经安装;

2)到后台配置参数中开启伪静态开关;

3)在站点目录建立web.config文件(可到源码包rewrite目录下拷贝规则),规则内容如下:

<?xml?version="1.0"?encoding="UTF-8"?>
<configuration>
????<system.webServer>
????????<rewrite>
????????????<rules>
?????????????????<rule?name="reIndex"?stopProcessing="true">
????????????????????<match?url="^(.*)$"?ignoreCase="true"?/>
????????????????????<conditions?logicalGrouping="MatchAll">
????????????????????????<add?input="{REQUEST_FILENAME}"?matchType="IsDirectory"?negate="true"?/>
????????????????????????<add?input="{REQUEST_FILENAME}"?matchType="IsFile"?negate="true"?/>
????????????????????</conditions>
????????????????????<action?type="Rewrite"?url="index.php?p={R:1}"?appendQueryString="true"?/>
????????????????</rule>
????????????</rules>
????????</rewrite>
????</system.webServer>
</configuration>

2、Apache环境

1)开启Apache重写模块,具体请百度,如果使用空间一般空间商默认已经开启;

2)到后台配置参数中开启伪静态开关;

3)在站点目录建立.htaccess文件(可到源码包rewrite目录下拷贝规则),规则内容如下:

<IfModule?mod_rewrite.c>
??Options?+FollowSymlinks
??RewriteEngine?On
??
??RewriteCond?%{REQUEST_FILENAME}?!-d
??RewriteCond?%{REQUEST_FILENAME}?!-f
??
??RewriteRule?^(.*)$?index.php?p=$1?[QSA,PT,L]
</IfModule>

3、Nginx环境

1、到后台配置参数中开启伪静态;

2、在nginx虚拟主机location配置中添加规则,规则如下:

location?/?{
	?if?(!-e?$request_filename){
	????	rewrite?^/index.php(.*)$?/index.php?p=$1?last;
????????????	rewrite?^(.*)$?/index.php?s=$1?last;
	?}
}

?注意:Nginx中如果站点部署在二级目录,请对应修改重写规则, 如:二级目录为test则:rewrite ^/test/(.*)$ /test/index.php?p=$1 last;

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注