我在Web应用程序中使用表单身份验证。我在配置文件中有这个。我使用IIS 7
<forms loginUrl="~/Account/Login.aspx" cookieless="UseCookies" protection="All"
name=".ASPXAUTH" timeout="60" requireSSL="false" slidingExpiration="true"
enableCrossAppRedirects="false" defaultUrl="~/Dashboard.aspx" />
当我在地址栏中输入我的网站的网址时,它会将我重定向到
Account/Login.aspx?ReturnUrl=%2f
代替Account/Login.aspx
我不知道原因是什么,但是当我使用IIS 5.1时,一切正常。
请帮帮我。
答案 0 :(得分:1)
表单身份验证重定向将源URL作为参数放入login.aspx请求中,以便将用户返回到他们输入的页面。 %2f
= /
,例如您网站的根目录。如果您输入了www.example.com/coolstuff.aspx
,则ReturnUrl
参数将为'%2fcoolstuff.aspx'。
没有错,这就是表单身份验证的工作方式。
答案 1 :(得分:1)
一种选择是将URL隐藏在浏览器地址栏中:
<script>
if (history.replaceState) {
history.replaceState({}, document.title, '//' + location.host + location.pathname);
}
</script>