是否有任何会导致IIS中的url重写模块无法启动的内容?也许是处于集成模式或http处理程序的网站?
我尝试了一些不同的东西来让重写规则起作用,但没有。我最新的就是这样
<rewrite>
<rewriteMaps>
</rewriteMaps>
<rules>
<rule name="rewriterule" enabled="true" patternSyntax="Wildcard" stopProcessing="true">
<match url="*" />
<action type="Redirect" url="http://www.google.com" />
</rule>
</rules>
</rewrite>
它根本不起作用。我尝试了各种正则表达式等等。它就像它没有被使用。
答案 0 :(得分:1)
好像你有答案,但这里有一些其他可能导致重写模块无法工作的事情:
部署网站并看到此功能无法使用时
你的服务器,很可能你错误配置了什么
在你的服务器上。你可能做的一个错误配置可能
将 overrideModeDefault 属性设置为拒绝以获取规则
在您的applicationHost.config中<sectionGroup name="rewrite">
文件
如果您使用的是共享托管环境,则会看到此功能 不工作,然后问你的提供者他们是否给你了 允许配置此部分。
在您的开发环境中,如果您运行的是您的网站 Visual Studio开发服务器,您将无法看到此内容 功能工作。您需要将应用程序配置为在其下运行 至少 IIS Express 以查看此功能是否有效。
答案 1 :(得分:1)
我的答案是,您必须在与url重写模块相同的目标平台上运行该站点。例如,我安装了x64版本的url重写模块,但该网站在32位下运行。一旦我将网站设置为在64位下运行,重写就开始工作了。