以下是我的web.config
重定向规则:
<rewrite>
<rules>
<rule name="Redirect from old page">
<match url="^oldpage.aspx" />
<action type="Redirect" url="pages/newpage.aspx" appendQueryString="true" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
在localhost
上,此重定向规则可以正常运行。
当我将配置文件发布到IIS时,重定向规则似乎打破了Web应用程序。我尝试去的每一页都会返回500错误。
注意:Web应用程序使用IP地址而不是域名。
示例:我想将http://192.168.168.255:44/oldpage.aspx?queryString=parameter
重定向到http://192.168.168.255:44/newpage.aspx?queryString=parameter
,但收到500错误。即使我想访问http://192.168.168.253
,我也会收到500错误。
IIS说:
从ApplicationHost.config文件或Web.config文件中删除格式错误的XML元素。
但是,我无法确定此重定向规则的格式错误。它在localhost中运行得很好。我应该在match url
节点中包含完整的IP地址吗?如果是这样,我将如何格式化?
答案 0 :(得分:0)
您确定服务器上还安装了IIS重写模块吗?如果不是IIS将无法识别重写节点并给出500错误。 http://www.iis.net/downloads/microsoft/url-rewrite