[转]thinkphp在iis下的rewrite伪静态的配置方法

From : http://code-tech.diandian.com/post/2012-11-12/40042151797

首先你要安装IIS下的rewrite组建,下载地址:Rewrite.zip

然后呢,在 IIS 管理器里选择网站,右键选择“属性”,如下图所示:(以下内容来自discuz帮助网站,你懂的

在弹出的窗口里选择“ISAPI筛选器”

上图中点击“添加”,在弹出的窗口里“筛选器名称”填写“rewrite”

上图界面中点击“浏览”,选择下载解压后的 Discuz! Rewrite 规则目录下的 Rewrite.dll 文件

浏览完毕点击“确定”

添加完毕点击“确定”

重新启动 IIS

重新选择该站点 => 右键“属性”=> “ISAPI 筛选器”,如果看到状态为向上的绿色箭头,就说明 Rewrite 模块安装成功了。

下面就是thinkphp专用了,不是thinkphp请略过….

打开:httpd.ini

把里面的内容注释掉,当然也可以删掉,然后写入如下内容:

[ISAPI_Rewrite] CacheClockRate 3600

RepeatLimit 32

RewriteRule (?!/dh)(?!/phpMyAdmin)(?!/Public)(.*)$ /index.php/$1 [I]

解释一下:

1

(?!/dh)(?!/phpMyAdmin)(?!/Public)  这段的意思是排除文件夹,意思就是这些文件夹就不要转了。(?!/你要排除的文件夹)

还有个问题就是,你的分页点击后,可能还是会出现 index.php ,那么你就去分页里面,把“index.php/”用str_replace替换成空就OK了

注意:

1.rewrite规则中的/需要转义为:/

2.在前台页面的url路径访问中,页面地址最好是是以“/”结尾,不要以数字或字符结尾,要在最后的数字或字符后添加“/”

原文地址:https://www.cnblogs.com/Athrun/p/3154493.html