Server Application Unavailable HTTP 500 error

Discussion in 'ASP .Net' started by Keith, Nov 7, 2003.

  1. Keith

    Keith Guest

    All,

    I have been told this is an ASP.NET issue and not an IIS
    issue, so I am posting this here.

    I have a problem with ASP.NET returning an HTTP 500 error
    when trying to run ASPX pages on Windows Server 2003
    Enterprise Edition Only.

    This works on Windows 2000, Windows 2003 Web Edition and
    Standard Edition.

    The error is a peculiar one.

    We have installed our application on Windows Server 2003
    Web Edition and it installs and runs fine. I have also
    installed this Windows Server 2003 Standard edition and
    it installed and ran fine. I then installed it on
    Windows Server 2003 Enterprise edition and that is when
    the problem happens. (keep in mind this is strange)

    Our application has ASP, COM, and ASP.NET, along with a
    couple 3rd party controls.

    If I pull up our application after an iisreset (or reboot
    for that matter) before I hit any asp.net page,
    everything works fine until I try to go to the ASP.NET
    portion of the application. Any time I hit an ASP.NET
    page I will get a server application unavailable error
    message on the screen. It also says to look in the event
    log for more information... There are no errors in the
    event viewer, but there is a 500 error message in the IIS
    log file for the asp.net page I am trying to work with.

    I thought it may be something that we were doing in the
    ASP, so I tried calling a hello.aspx page that would only
    output the current date/time. Again, I got the server
    application unavailable message.

    Here is where the wierdness starts. If I run an
    iisreset (or reboot) and go to the hello.aspx page before
    going into our application, every thing works as it is
    supposed to including the ASP.NET portion of the
    application.

    This does not happen unless I call our application that
    calls a COM object.

    For example, if I do an iisreset (or reboot) and I go to
    hello.asp (which outputs the date and time) and then go
    to hello.aspx (which is the same file as before)
    everything works fine. I can then go into our
    application and pull up all content including the asp.net
    portion (because the asp.net was pulled up prior to going
    into the application).

    Why would this work just fine in the other versions of
    Windows server 2003, but not in Windows Server 2003
    Enterprise edition?

    In addition to this, I have gone as far as running a
    FileMon to see if there was a file that I didn't have
    permissions to run. Here is what I found... (I am
    cutting and pasting from a post in the IIS newsgroup, so
    I am sorry for anything that doesn't sound right)

    We are using 10 of our own custom DLLs. There are also
    some third party DLLs (about 5). But, it doesn't matter
    how many DLLs I load. The first page only loads 1 dll
    (our Common DLL). That dll will perform string
    concatenation along with reading an INI file and some
    Kernal Calls. The calls are primarily to
    GetPrivateProfileString.

    As soon as I load this DLL, I get the error. I haven't
    tried to create a simple DLL that has 1 method and
    returns "Hello World" to see if the problem will still
    exist. I may try this later today.

    When I called MS Support to get the HotFix that you had
    recommended before http://support.microsoft.com/?
    id=821157, I was told by the support person that
    he didn't think that the hot fix would solve my problem.

    After providing a little more information, He told me to
    unregister the shfusion.dll file and navigate to the path
    that was showing to give me errors in the FileMon to see
    if the path existed. If the path existed, he said to
    make sure that the user had the appropriate security on
    that folder.

    After unregistering the shfusion.dll file I was able to
    set permissions on the assebly directory. I added the
    IIS_WPG group and gave it full control.

    The errors I received in the FileMon run are...


    Process:
    w3wp.exe:2652

    Request:
    Directory

    Path:
    C:\windows\assembly\gac\system.web\1.0.500.0_b03f5f7f11d50
    a3a\

    Error:
    No Such File

    Other:
    FileBothDirectoryInformation: system.web.INI

    The second one was...

    Process:
    w3wp.exe:2652

    Request:
    Query Information

    Path:
    C:\windows\assembly\NativeImages1_v1.1.4322\System.web

    Error:
    File Not Found

    Other:
    Attributes: Error


    The NativeImages1_v1.1.4322\System.Web directory does not
    exist.

    and the
    C:\windows\assembly\gac\system.web\1.0.500.0_b03f5f7f11d50
    a3a\

    did not exist, but the following directory did
    C:\WINDOWS\assembly\GAC\System.Web\1.0.5000.0__b03f5f7f11d
    50a3a

    As a side note, If I change the account that my
    Application pool is running as to either Local System or
    Local Service accounts have no problems running this
    code, so the only account that gives me problems would be
    the Network Service Account. I would prefer not to run
    the Application pool under Local System or Local Service
    but this will work as a workaround until we find a
    permanent solution.

    I originally thought this may be a permissions issue
    until I ran into what I described earlier in my
    post. Is it possible this could still be a
    permissions issue? If so, what is missing permissions in
    2003 Enterprise that is there in Web and Standard
    Editions?

    Thanks,

    Keith
     
    Keith, Nov 7, 2003
    #1
    1. Advertisements

  2. Keith

    MSFT Guest

    Hi Keith,

    It sounds like a permission issue. Different server may have different
    permission setting. If you grant full control permission on
    "window/assembly" with Network Service Account, will it work on the Windows
    server 2003 Enterprise?

    Luke
    Microsoft Online Support

    Get Secure! www.microsoft.com/security
    (This posting is provided "AS IS", with no warranties, and confers no
    rights.)
     
    MSFT, Nov 10, 2003
    #2
    1. Advertisements

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments (here). After that, you can post your question and our members will help you out.