Saturday, January 29, 2011

How do I get around "Access is Denied" [Number: 5 (0x80070005)], with IIS6/FastCGI and PHP 5.2.3?

I'm getting this error with IIS 6.0 (i assume), and PHP 5.2.3, and FastCGI

FastCGI Error

The FastCGI Handler was unable to process the request.
Error Details:

Error Number: 5 (0x80070005).
Error Description: Access is denied.
HTTP Error 500 - Server Error.
Internet Information Services (IIS)

Any ideas, nothing revealings in logs (other than 500 errors), this is pretty much all of I have to work with. The script has read and execute privileged for the internet guest account; and, I've added read/execute privileges to the whole D:\PHP.

I followed this tutorial http://learn.iis.net/page.aspx/247/using-fastcgi-to-host-php-applications-on-iis-60/ to set it up. The only major diversion is I installed PHP to D:\PHP

  • Ok, I actually figured out it with Process Monitor! This was the error:

    Date & Time:    3/18/2010 2:34:51 PM
    Event Class:    File System
    Operation:  IRP_MJ_CREATE
    Result: ACCESS DENIED
    Path:   D:\PHP\php-cgi.exe
    TID:    4764
    Duration:   0.0005087
    Desired Access: Read Data/List Directory, Execute/Traverse, Read Attributes, Synchronize
    Disposition:    Open
    Options:    Synchronous IO Non-Alert, Non-Directory File
    Attributes: n/a
    ShareMode:  Read, Delete
    AllocationSize: n/a
    

    And, the process was run from this user NT AUTHORITY\NETWORK SERVICE. I added NETWORK SERVICE to the ACL for D:\PHP (my php dir), for read/execute, list folder contents, and read and had the permissions propagate to all the children (files), and it worked!

    Cool beans, nice tool.

  • Ah, I tried to upvote but I don't have enough reputation points ;\

    From k4ppad0n

0 comments:

Post a Comment