我有一个身份验证脚本( 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
。
答案 0 :(得分:4)
有时您必须在页面路径前面加上波形符以指示根目录:
'~/forbidden.aspx'
答案 1 :(得分:0)
您是否使用“〜/ ...”来确保所有路径都是相对的?
顺便说一句,您应该使用<location>
标签通过Web.config设置页面访问权限。这样,您可以进行某种基于角色的访问,而无需太多自定义代码。