url - Azure 网站 - 使用 web.config 进行 URL 重写不起作用

标签 url azure web-config url-rewriting

我们正在将一些站点迁移到 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/

相关文章:

javascript - 用 JavaScript 替换部分 URL

ios - 从 String 获取用于 AVPlayer 的 URL 的问题

c# - System.Configuration.ConfigurationSettings.AppSettings 在生产中不可访问

sql-server - Sql Server 选择请求调整

.net - 我们如何在基于Dot Net的Azure移动服务中加载相关对象(预加载)?

asp.net - 更改 Web.config 连接字符串而不重置 session

powershell - 使用Powershell修改web.config

javascript - 使用 Angular 路由从一页获取信息到另一页

angular - 如何导航到外部 URL 参数?

c# - 云服务项目 (csproj) 无法使用不安全代码进行编译 - VSTS