IIS和Windows身份验证不允许错误页面

问题描述:

我一直在尝试这从最近两天。我没有得到什么问题。我搜索了网页,但没有找到任何解决方案。我尝试了IIS的所有设置,例如“移动协商,禁用其他身份验证”,但不起作用。所以这里是我的问题: 我有一个Intranet Web应用程序在ASP.NET中使用用户名和密码存储在Active Directory中。我的应用程序中有五个不同的页面。所有页面都与它们的web.config文件一起存储在一个单独的文件夹中。这些web.config文件具有允许像这样查看该页面的用户的名称。IIS和Windows身份验证不允许错误页面

<authorization> 
<allow users="Domainname\username"/> 
</authorization> 

我想重定向那些谁在上面的列表中其他错误页面,相应的消息不是用户。我用这个

保护无效Application_EndRequest(对象发件人,EventArgs的) {

 if (HttpContext.Current.Response.Status.StartsWith("401")) 
     { 
      HttpContext.Current.Response.ClearContent(); 
      Response.Redirect("~/myerrorpage.aspx?myerrormsg=you are not allowed"); 
     } 

这是工作在本地主机,但是当我把我的应用程序在IIS中,因为这一切授权用户(那些谁在列表中)也重定向到错误消息页面。

当我从IIS中删除它时,它正在工作,但我无法将未经授权的用户重定向到错误消息页面。我也尝试使用IIS的错误页面设置,但遇到同样的问题。

请问我该怎么办?有没有其他方法可以做到这一点?

如果您使用的是Windows身份验证,那么你应该记住这mind- 如果手动启用IIS中的Windows身份验证,请不要包括下面的代码在你的web.config

<authentication mode="Windows" /> 

,如果你使用这个,它会导致与我在我的问题中所述的相同的问题。