我想创建一个非常简单的 URL 重写规则。我在本地使用带有 Visual Studio 2010 的 IIS 7 Express (XP)。我创建的规则(从此处的示例复制)在本地完美运行。但是,一旦我将它复制到我的托管服务器,我就会收到 500 错误。
摘自 web.Config:
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<rewrite>
<rules>
<rule name="Rewrite to article.aspx">
<match url="^article/([0-9]+)/([_0-9a-z-]+)" />
<action type="Rewrite" url="article.aspx?id={R:1}&title={R:2}" />
</rule>
</rules>
</rewrite>
</system.webServer>
假设规则是破坏应用程序的原因,我删除了规则部分,但应用程序仍然抛出 500 错误。但是,如果我完全删除重写部分,则应用程序会正确加载。
所以我的问题是,我的 web.Config 中是否缺少任何内容?他们声称这是一个脚本问题,并且 URL 模块已正确安装并在他们的 IIS 7 服务器上运行。有什么办法可以用脚本来确认吗?