32

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?

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

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

  • 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! – alexander7567 Jul 20 '14 at 13:04
  • Brilliant! Fixed it immediately for me as well. +1 – Will Appleby Mar 25 '15 at 23:21
  • 2
    Thanks! PHP 5.6 instance requires VC++ 11 (VS 2012) runtimes – C0r3yh May 20 '15 at 16:22
  • Thanks ! Originally missed the part about x86 but after failing miserably I saw what I missed and everything works fine now. – Alexandre Danault Dec 8 '15 at 14:20
  • 5
    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 – derekmx271 May 12 '16 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).

  • How similar is the message? – Deer Hunter Apr 6 '15 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 '15 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.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.