我们正在将一些站点迁移到 Azure,我将其设置为“网站”。
我们正在尝试做的事情的一个例子非常简单。
当前网址:http://www.website.com/Products.aspx 干净的网址:http://www.website.com/Products/
所以在web.config中,有以下内容:
<system.webServer>
<rewrite>
<rules>
<rule name="ProductList">
<match url="/Products.aspx" />
<action type="Redirect" url="/Products" />
</rule>
</rules>
</rewrite>
</system.webServer>
这是在 IIS 中生成的。我尝试将 stopProcess 属性设置为 true...这是我在几个线程中看到的解决方案,但没有任何效果。
该网站是我们使用 ISAPI 模块进行重写的旧网站之一。由于我们没有使用Azure VM,因此我们无法继续使用此方法进行重写。
我在这里缺少什么吗?
最佳答案
Azure 网站未安装 URL 重写模块,因此配置方法不起作用。也许您可以更新站点代码以使用 ASP.NET URL 路由,如 Scott Gu 的博客文章中所述:http://weblogs.asp.net/scottgu/archive/2009/10/13/url-routing-with-asp-net-4-web-forms-vs-2010-and-net-4-0-series.aspx
Azure 网站过去没有安装 URL 重写模块,但现在已经安装了,因此您可以只使用标准 <system.webServer><rewrite>
您的 web.config
部分.
关于url - Azure 网站 - 使用 web.config 进行 URL 重写不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20410669/