如果loginUrl是相对的,如何更改登录重定向位置?

时间:2016-03-18 13:17:39

标签: c# asp.net webforms forms-authentication

如果表单身份验证的loginurl属性是相对的 - ~/...,则在处理超时重定向时将其添加到当前页面的路由中。在这种情况下如何使用其他路线?

例如:

loginUrl属性:~/registration/login.aspx

当前网址:site.com/main/dir/page.aspx

并且在处理重定向时,会生成site.com/main/dir/registration/login.aspx个网址,这是错误的。

我想获得site.com/main/registration/login.aspx,但现在我无法接受。

我的web.config包含下一行

<authentication mode="Forms">
  <forms loginUrl="~/registration/login.aspx" timeout="120" enableCrossAppRedirects="true" />
</authentication>

2 个答案:

答案 0 :(得分:2)

您可以使用RedirectToLoginPage

https://msdn.microsoft.com/it-it/library/system.web.security.formsauthentication.redirecttologinpage(v=vs.110).aspx

要回答您的问题,我需要知道您是否正在使用Response.Redirect以及是否有路由规则。

如何配置IIS?你有一个虚拟目录到&#34; dir&#34;?删除它

答案 1 :(得分:0)

要通过下面的表单身份验证重定向到登录页面,

<authentication mode="Forms">
        <forms name="MYWEBAPP.ASPXAUTHTT" loginUrl="~/login.aspx" timeout="100000" slidingExpiration="true" />
      </authentication>

你可以给这样的相对网址。