34

When attempting to run a PHP file on Windows server 2012 and IIS, I keep getting a 500 error. I cannot find any detailed logs or anything. However, when going to PHP Manager for IIS and click check config, I get the following error:

Detailed Error Information:
Module    FastCgiModule 
Notification    ExecuteRequestHandler 
Handler    PHP55_via_FastCGI 
Error Code    0xc0000135 
Requested URL    http://domain.com:80/brkld3ip.php 
Physical Path    drive:\sites\domain.com\brkld3ip.php 
Logon Method    Anonymous 
Logon User    Anonymous 

I installed PHP using Microsoft Web Platform Installer 5.0 on a fresh install of Windows Server.

I am new to IIS coming from Linux. So I am not "learned" enough in IIS to know what's going on. I have tried updating C++ redistributable 2012 update 4 as a couple websites suggest. Anybody have any other ideas?

EDIT: Another thing I checked was memory limit. One site suggested my memory limit needed to be upped. No change.

EDIT: Question: Does Windows have to be rebooted for PHP changes to take effect?

2
  • Which version of PHP?
    – Kev
    Jul 20, 2014 at 5:22
  • Well when i installed php 5.5 with that Microsoft installer it also installed 5.3. Jul 20, 2014 at 12:47

4 Answers 4

54

There's a fairly good chance you're missing the correct VC++ runtime for the version of PHP you're running.

If you're running PHP 5.5.x you need to ensure the VC++11 runtime is installed:

http://www.microsoft.com/en-us/download/details.aspx?id=30679

Make sure you download and install the x86 version (vcredist_x86.exe), PHP on Windows isn't 64 bit yet.

If you're running PHP 5.4.x then you need to install the VC++9 runtime:

http://www.microsoft.com/en-us/download/details.aspx?id=5582

13
  • 1
    You was correct. I already did the x64 since it was a 64 bit machine. Installed the x86 and instantly (no reboot required) it started working. Thanks! I racked my brain for hours! Jul 20, 2014 at 13:04
  • Brilliant! Fixed it immediately for me as well. +1 Mar 25, 2015 at 23:21
  • 2
    Thanks! PHP 5.6 instance requires VC++ 11 (VS 2012) runtimes May 20, 2015 at 16:22
  • Thanks ! Originally missed the part about x86 but after failing miserably I saw what I missed and everything works fine now. Dec 8, 2015 at 14:20
  • 6
    For anyone having this issue with PHP 5.6, you need the x86 version of Visual C++ Redistributable for Visual Studio 2012 Update 4 (vcredist_x86.exe), which can be obtained from the following page: microsoft.com/en-us/download/details.aspx?id=30679 May 12, 2016 at 22:17
6

I got caught out by a similar message, and it turned out that I had not installed the CGI Server Role (under IIS -> Application Development).

2
  • How similar is the message? Apr 6, 2015 at 9:26
  • I installed the VC++ 11 runtime but I also had to install CGI support to get it working. On Windows 8.1 and IIS 8.5. Find it under Turn windows features on or off > Internet information services > application development features > CGI
    – jxmallett
    Jul 4, 2015 at 3:42
4

I had the same error for PHP 7.0.3 on a 2012 R2 server with IIS 8.5.

The solution is to install: Visual C++ Redistributable for Visual Studio 2015 32bits

Everything worked properly after installing this.

1

Still had the 500 error after installing the Visual C++ Redistributable for Visual Studio 2015 32bits.

Ran procmon from microsoft sysinternals and when requesting my php web page found

w3wp.exe C:\PHP\php-cgi.exe "ACCESS DENIED"

w3wp.exe is the app pool running under IIS

Giving the specific app pool user READ/EXECUTE permissions to c:\php fixed the issue.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .