我有一个现有页面,其中包含几个问题(例如常见问题),其网址类似
主要帮助网址:sitename.com/help 特定部分的网址:sitename.com/help#topic123
现在,要求已更改,并被告知要使用查询字符串sitename.com?showhelp将/ help(临时)重定向到首页。
我在web.config中使用了重定向规则,该规则在主要帮助页面上正常工作。
Requested URL: sitename.com/help
Redirected to URL: sitename.com?showhelp
问题 当我将特定的主题URL重定向到一个新的URL时,它仍在URL末尾显示#topic123,例如
Requested URL: sitename.com/help#topic123
Redirected to URL: sitename.com?showhelp#topic123
Required URL: sitename.com?showhelp
使用的规则:
<rule name="newhelp" stopProcessing="true">
<match url="^help" />
<action type="Redirect" url="?showhelp" redirectType="Temporary" />
</rule>
我也尝试从控制器操作方法重定向,但这不能解决问题。我无法从Request.Url中读取#topic123部分
答案 0 :(得分:1)
使用(#。+)获取多余的片段
<rule name="newhelp" stopProcessing="true">
<match url="^help(#.+)?" />
<action type="Redirect" url="?showhelp{R:1}" redirectType="Temporary" />
</rule>