[英]url redirection in IIS not working for non existing pages
我有一個頁面http://domain1.com/blog.aspx 。
我已刪除此頁面,並為此頁面創建了一個具有新域的網站。
就像下面的http://domain2.com/blog.aspx
然后我在domain1.com web.config中添加了如下規則
<rewrite>
<rules>
<rule name="Redirect blog" stopProcessing="true">
<match url=".*" />
<conditions>
<add input="{HTTP_HOST}" pattern="^domain1.com/blog.aspx$" />
</conditions>
<action type="Redirect" url="http://domain2.com/blog.aspx" redirectType="Permanent" />
</rule>
</rules>
</rewrite>
但是訪問http://domain1.com/blogpage.aspx時出現404錯誤
如何解決此問題?
一些問題...
{HTTP_HOST} =主機名domain1.com,因此它永遠不會與您的模式匹配
您也可以執行此pattern="^domain1.com/blog.aspx$"
.
需要逃脫。
現在,您還必須在request_uri
上進行匹配以捕獲頁面。 下面應該工作。 提供您將domain1.com/blogpage.aspx
到domain2.com/blog.aspx
<rule name="Redirect blog" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll" >
<add input="{HTTP_HOST}" pattern="^domain1\.com$" />
<add input="{REQUEST_URI}" pattern="blogpage\.aspx$" />
</conditions>
<action type="Redirect" url="http://domain2.com/blog.aspx" redirectType="Permanent" />
</rule>
</rules>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.