Getting an Error page to work with a 401.2 error

us1975mc
us1975mc used Ask the Experts™
on
I have a website set up that has a web.config in the root directory.  There are also 3 sub directories that each have a web.config that is used for permissions. My problem is that when I try to get the custom errors to work.  I have the following code in the root level web.config.
<system.web>
    <customErrors mode="On" defaultRedirect="Error.htm" />
    <authentication mode="Windows"/>
    <authorization>
      <deny users="?" />
    </authorization>

Open in new window


I have the following code in one of the sub directories:
<?xml version="1.0"?>
<configuration>
  <system.web>
    <authorization>
      <allow users="ADS\Smith"/>
      <allow users="ADS\Jones"/>
      <deny users="*"/>
    </authorization>
    <customErrors mode="On" defaultRedirect="Error.htm">
      <error statusCode="401" redirect="Admin401.htm" />
    </customErrors>
  </system.web>
</configuration>

Open in new window


 When I receive a general error the Error.htm page works as it should.  What I am trying to get to work is the 401.2 error page. In the subfolder the web.config looks like this:
My 401 error
How do I get the 401.2 error to use my Admin401.htm?
Comment
Watch Question

Do more with

Expert Office
EXPERT OFFICE® is a registered trademark of EXPERTS EXCHANGE®

Author

Commented:
Forgot to mention that just before I get the 401 error I get the Windows Logon:
Windows Security Logon
Paul MacDonaldDirector, Information Systems

Commented:
One answer is here:
http://weblogs.asp.net/gurusarkar/archive/2010/01/12/redirect-unauthorized-users-to-access-denied-page-instead-of-login-page.aspx

Another way to do this is to go into the properties for the site in IIS, and on the Custom Errors tab, change which page is displayed for the 401.2 error.

Author

Commented:
paulmacd,
I tried both with no success.  When I entered the code:
 Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        If Not Page.IsPostBack Then
            If Request.IsAuthenticated AndAlso Not String.IsNullOrEmpty(Request.QueryString("ReturnUrl")) Then
                Response.Redirect("~/TechError.aspx")
            End If
        End If
    End Sub

Open in new window

It does not seem to even see this.  I get the same Sign In:
Sign Inand then I get the same error:
Error 401When I went to the server administrators and they placed the error page on the property for the site in the IIS I received the following error:
Page Error
Become a CompTIA Certified Healthcare IT Tech

This course will help prep you to earn the CompTIA Healthcare IT Technician certification showing that you have the knowledge and skills needed to succeed in installing, managing, and troubleshooting IT systems in medical and clinical settings.

Director, Information Systems
Commented:
Okay, those are two different issues.  You're being asked to log in to the domain (the Windows Security dialog) because you have anonymous access turned off and/or you have permissions set so the web user account (IUSR_whatever) doesn't have permissions to the .aspx page.

The second issue ("the website cannot display the page") could be anything.  Can you try to recreate the problem while viewing the page(s) in IIS?  You should get a more descriptive error message that way.

Author

Commented:
Thanks paulmacd,

It took a little while but it finally came through.

Thanks!!!
Paul MacDonaldDirector, Information Systems

Commented:
Happy to help.

Do more with

Expert Office
Submit tech questions to Ask the Experts™ at any time to receive solutions, advice, and new ideas from leading industry professionals.

Start 7-Day Free Trial