2014-12-31 41 views
0

我有使用表单身份验证的应用程序。它已经在根网络配置文件中拒绝标签。表单身份验证和自定义错误

<authorization> 
    <deny users="?" /> 
</authorization> 

应用文件结构具有CSS和JS文件夹。现在,当我尝试访问CSS和JS文件夹(https://domainname/CSS)时,它将我重定向到登录页面。这确保了网站中的目录的存在。我想在这种情况下显示自定义错误页面。

另外,当我尝试访问https://domainname/bin URL时,它将我重定向到HTTP 404错误。

如何在两种情况下显示相同的自定义错误页面?

回答

0

如果你已经使用形式验证任何未经授权的请求将重定向到您在形式的认证loginUrl指定的页面

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

但对于错误页面,如404或500或任何其他可以congigure页面时显示错误occurs.Add这web.config中配置错误页面

<customErrors defaultRedirect="Error.aspx"> 
    <error statusCode="404" redirect="404.aspx"/> 
    <error statusCode="500" redirect="500.aspx"/> 
</customErrors> 
0

你能赶上在应用程序事件之一未授权请求在Global.asax.cs中

protected void Application_AuthenticateRequest(Object sender, 
                EventArgs e) 
{ 
string url = HttpContext.Current.Request.Url.AbsoluteUri; 
if (!Request.IsAuthenticated || url.Contains("Check Your URL Here")) 
Response.Redirect("AccessDenied.aspx"); 
} 
相关问题