【问题标题】:How-to: Proper redirect with Relative URLs ASP.NET操作方法:使用相对 URL 正确重定向 ASP.NET
【发布时间】:2008-11-10 14:50:04
【问题描述】:

我有一个身份验证脚本 (CheckLogin.aspx),如果任何凭据不匹配,我的应用程序将重定向(通过 Server.Transfer)访问拒绝页面 (forbidden.aspx)。每次我的脚本运行时,它都会得到一个 InvalidOperationException: Failed to map the path '/forbidden.aspx'。这是我的应用程序文件结构的模型:

<root>
..default.aspx
..forbidden.aspx
..<inc>
....scripts.js
..<auth>
....CheckLogin.aspx

如您所见,CheckLogin.aspx 页面位于根目录内的文件夹中,而 forbidden.aspx 页面位于根目录内。我告诉我的应用程序重定向到的路径是 /forbidden.aspx

【问题讨论】:

    标签: asp.net redirect


    【解决方案1】:

    有时你必须在页面路径前加上波浪号来表示根目录:

    '~/forbidden.aspx'
    

    【讨论】:

      【解决方案2】:

      您是否使用“~/...”来确保所有路径都是相对的?

      顺便说一句,您应该通过 Web.config 设置页面访问,使用 &lt;location&gt; 标签。这样您就可以拥有某种基于角色的访问权限,而无需太多自定义代码。

      【讨论】:

      • 我使用这种方法的原因是我的 webapp 与一个平台应用程序链接在一起。
      猜你喜欢
      • 2018-06-20
      • 1970-01-01
      • 2011-02-10
      • 1970-01-01
      • 2011-09-08
      • 2019-12-15
      • 1970-01-01
      • 2016-04-26
      • 1970-01-01
      相关资源
      最近更新 更多