我设置了以下网址重写规则:
<rules>
<rule name="Clean URL" stopProcessing="true">
<match url="^([A-Za-z0-9]+)([\?A-Za-z0-9#=&]+)?$" />
<action type="Rewrite" url="{R:1}.aspx{R:2}" />
</rule>
<rule name="CleanTest" stopProcessing="true">
<match url="^([a-z0-9/]+).aspx([a-zA-Z0-9\?#=&]+)?$" />
<action type="Redirect" url="{R:1}{R:2}" />
</rule>
</rules>
这样做是在客户端的地址栏中显示一个干净的(非.aspx)URL,并将每个干净的URL调用重定向到相应的.aspx-Page。这“通常”工作正常。但是,当我的网址包含主题标签时,即Administration.aspx#first
仅在IE中重定向后标签丢失,它在FF / Chrome中运行得非常好,这可能导致这种情况?
点击Chrome / FF中的链接后的结果:
Administration#first
IE(9)中的结果:
Administration
附录:GET参数完全正常。
链接:Login.aspx?logout=1
IE:Login?logout=1
FF / Chrome:Login?logout=1
答案 0 :(得分:2)
由于主题标签主要是客户端的浏览器知道在页面中滚动的位置,因此我并不是所有浏览器都将其发送到服务器。但是我不确定规范说的是什么。