没有身份验证的URL重写

3

我正在使用IIS7。当用户登录时,一切都很顺利。但是如果我注销并转到:

dev.local/EN/Login.aspx

URL重写就无法正常工作了。首先,它会重定向到

dev.local/Login.aspx?ReturnUrl=/EN/Login.aspx

为什么?如何在重定向之前使URL重写起作用?

web.config:

  <system.web>
    <authentication mode="Forms">
      <forms name=".MyForm" loginUrl="Login.aspx" domain="dev.local" cookieless="UseCookies" protection="All" path="/" timeout="30" />
    </authentication>
  </system.web>

  <system.webServer>
        <rewrite>
            <rules>
              <rule name="LanguageUrlRewrite">
                <match url="^(.+)/(es|en|fr|pt)/(.+)?(.+)" />
                <action type="Rewrite" url="{R:1}/{R:3}?Language={R:2}&amp;{R:4}" />
              </rule>
            </rules>
        </rewrite>
  </system.webServer>
1个回答

0

您没有启用匿名访问。身份验证将覆盖重写。按照您的设置,只有在登录后才能访问页面。否则,您只能在未登录的情况下访问登录页面。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接