[强烈推荐] thinkphp iis7.5 win2008 上 设置虚拟静态 错误的解决方法 web.config
1. 问题 设置好虚拟静态 出现500错误,找不到对应的资源:
原因 没有安装 windows 的官方iisrewrite
下载地址
http://www.microsoft.com/web/gallery/install.aspx?appid=urlrewrite2
2 修改web.config
添加
<rewrite>
<rules>
<rule name="OrgPage" stopProcessing="true">
<match url="^(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^(.*)" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" />
</rule>
</rules>
</rewrite>
总的类是这样子
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<httpErrors errorMode="Detailed" />
<handlers>
<add name="php" path="*.php" verb="*" modules="IsapiModule" scriptProcessor="D:\php_5_2_4\php5isapi.dll" resourceType="Unspecified" preCondition="bitness32" />
</handlers>
<defaultDocument>
<files>
<add value="index.php" />
</files>
</defaultDocument>
<rewrite>
<rules>
<rule name="OrgPage" stopProcessing="true">
<match url="^(.*)" />
<conditions logicalGrouping="MatchAll">
<add input="{HTTP_HOST}" pattern="^(.*)" />
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
3 最后一步 检测xml
http://web.chacuo.net/formatxml 到这里格式化下,最好另存为 utf8。防止中文导致错误
4 站点 双击错误页,打开 没有提示xml格式错误,或者web.config 就成功了