【问题标题】:URL Rewrite error in website configuration网站配置中的 URL 重写错误
【发布时间】:2013-02-27 11:33:02
【问题描述】:
我正在尝试在本地机器上配置一个 ASPDotNetStoreFront 应用程序,该应用程序在实时服务器上运行良好。
尝试在本地运行时出现错误
HTTP Error 500.52 - URL Rewrite Module Error.
我浏览了许多文章和论坛,但无法解决问题。我使用的是 windows 7,IIS7,Target framework 是 3.5,AspDotNetStoreFront 版本是 9.1.0.1
错误信息截图如下
【问题讨论】:
标签:
asp.net
url-rewriting
aspdotnetstorefront
【解决方案1】:
这是因为子虚拟目录从父节点(这里是站点根目录)继承了设置。所以虚拟目录中会有重复的重写规则。您可以使用以下元素禁用继承:
<location path="." inheritInChildApplications="false">
<system.webserver>
...
<system.webserver>
</location>
但是,不建议将站点和虚拟目录指向相同的物理路径。这样,站点中的任何配置更改都将复制到虚拟目录。显然,虚拟目录上的更改也将被复制到站点。
【解决方案2】:
我建议不要使用默认网站或 localhost 作为绑定,而是使用 staging.aspdotnetstorefront.[yourdomainhere].local 或类似名称。之后,您可以通过添加 127.0.0.1 staging.aspdotnetstorefront.[yourdomainhere].local 来修改您的主机文件以进行循环。这样就没有要继承的设置了。
如果您出于许可原因确实需要 localhost,您可以随时更改绑定上的端口 (IE localhost:88)。
我还应该提到,您可能需要修改您的解决方案(如果您使用源代码)以使 Web 项目指向更新的绑定。