我正在为我从未工作过的网站设置一些重写。目标很简单,但由于某种原因,服务器似乎忽略了.htaccess文件和Web.config文件!我尝试了两种以防万一,但服务器运行的是Microsoft-IIS / 6.0,并且由PleskWin,ASP.NET和PHP / 5.2.17提供支持。该网站运行Wordpress,所有代码都是用PHP编写的。至少,Web.config文件应该破坏网站,但它绝对没有影响。这两个文件都位于根目录“httpdocs”中,该目录与index.php文件相同。
这是我的Web.config文件:
<system.webServer>
<rewrite>
<rules>
<rule name="Rewrite CI Index">
<match url=".*" />
<conditions>
<add input="{REQUEST_FILENAME}" pattern="css|js|jpg|jpeg|png|gif|ico|htm|html|ttf|eot" negate="true" />
<add input="{REQUEST_FILENAME}" pattern="admin.php" negate="true" />
<add input="{REQUEST_FILENAME}" pattern="index.php" negate="true" />
</conditions>
<action type="Rewrite" url="index.php/{R:0}" />
</rule>
</rules>
</rewrite>
</system.webServer>
我的.htaccess(以防万一)
RewriteEngine On
RewriteRule ^google.html$ http://www.google.com/ [R=301]
答案 0 :(得分:0)
我认为您的重定向无效,因为IIS 6.0中不支持system.webServer
元素,因此不会使用您在该部分中指定的任何信息(请参阅此处:http://www.iis.net/configreference/system.webserver)。
如果要在IIS 6.0中执行重定向,则可能必须安装单独的ISAPI筛选器。这些问题有更多信息:
where to write URL rewrite rule in IIS 6
https://serverfault.com/questions/1408/how-can-i-rewrite-urls-ala-mod-rewrite-for-free-in-iis-6
此外,值得一提的是确保在IIS中为此站点设置Web应用程序。如果文件只是在没有创建应用程序的虚拟目录中,则不会使用ASP.NET来运行该网站。在重读你的问题时,看起来好像已经完成了,但我想我会提到它以防万一。有关如何操作的文档可以在这里找到: