ASP.NET 链接不会重定向到正确的页面

本文关键字:重定向 NET 链接 ASP | 更新日期: 2023-09-27 18:34:43

在使用应用程序时,我不时会遇到链接到Visual Studio中的页面 ASP.NET 问题。

我创建了指向页面的链接,但它们总是重定向到默认页面(默认.aspx(

  • 我尝试了各种事情,例如删除和重新创建
  • 重命名页面
  • 即使页面不存在,它仍然重定向到默认值页。

我的Login.aspx页面与创建此类链接ForgotPassword.aspx文件夹相同

<asp:HyperLink ID="HyperLink2" runat="server"
               NavigateUrl="ForgotPassword.aspx">
             Forgot your password ?
</asp:HyperLink>

<a href="ForgotPassword.aspx">Forgot your password ?<a>

我不明白为什么这些基本的东西会不起作用......如何解决此问题?这可能是一个错误吗?

编辑:浏览器中的 URL 如下所示:

/Account/Login.aspx?ReturnUrl=%2fAccount%2fForgotPassword.aspx

我的网络配置:

<authentication mode="Forms">
  <forms loginUrl="~/Account/Login.aspx" timeout="2880" />
</authentication>

ASP.NET 链接不会重定向到正确的页面

我通过将以下内容添加到我的 web.config 文件中来解决此问题:

  <location path="ForgotPassword.aspx">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>

编译网站时会发生什么? 如果 Visual Studio 找不到 forgetgotPassword.aspx 页面,您应该会在错误列表中收到一条警告,指出"找不到文件'忘记密码.aspx"。 请注意,这将显示在"错误列表"选项卡中,而不是"输出"选项卡中。

假设您没有收到此警告...嗯。 我脑海中唯一浮现的是,也许您指定了默认行为? 如果找不到链接中指定的页面,则应获得 404。 如果您的网站托管在 IIS 中,则可以指定收到错误消息(如 404(时的行为。 也许IIS正在做一些事情,它将404重定向到默认.aspx页面?

另外,我刚刚注意到您从"不时"开始。 所以这意味着这是一个不一致的错误? 链接有时有效,但有时无效? 如果是这种情况,则存在严重错误,可能是Visual Studio中的某种错误,插件或其他原因。 当所有其他方法都失败时重新安装!

您的授权节点在 Web.config 中是什么样的? 我的猜测是,"忘记密码"页面的路径需要经过身份验证的用户。