为什么我的DNN友好网址重定向没有生效?

时间:2012-05-18 14:47:26

标签: iis dotnetnuke

我已将以下XML添加到我的SiteUrls.config文件中:

    <RewriterRule>
      <SendTo>/pod/</SendTo>
      <LookFor>.*abcdefg</LookFor>
    </RewriterRule>

当我转到http://localhost/abcdefg时,它成功将我重定向到http://localhost/pod。我的localhost是一个IIS 7 Web服务器。

但是,我无法使用相同的配置来处理我们的生产或登台机器。它保持在http://staging.x.com/abcdefg并出现404错误。

究竟需要设置什么才能使其正常工作?我没有注意到我在本地使用的IIS模块与生产/登台系统上的IIS模块之间存在很大差异。

1 个答案:

答案 0 :(得分:1)

您可能需要安装hotfix以支持IIS 7上的无扩展名网址。

From Hanselman

  

获取extensionless URLs working on IIS6 was tricky before并写了很多内容。在IIS6和ASP.NET MVC的早期,您将所有映射到托管代码。 ASP.NET路由曾经要求RAMFARR设置为true,直到Extensionless URL feature was created

     

此KB http://support.microsoft.com/kb/980368中添加了无扩展URL支持,并随ASP.NET MVC 4一起提供。如果您有ASP.NET MVC 4,则您的开发计算机上会有无扩展URL。但是你的服务器可能没有。您可能需要安装此修补程序,或打开RAMMFAR。如果你能避免,我宁愿安装更新而不是打开RAMMFAR。 运行所有模块选项实际上是通配符映射。