Here’s your Problem:

Ok, so we’re all keen to start with the next version of Magento when. Hold on.

 HTTP Error 500.0 - Internal Server Error

C:\Program Files (x86)\PHP\php-cgi.exe - The FastCGI process exited unexpectedly

Module

FastCgiModule

Notification

ExecuteRequestHandler

Handler

php-5.3.9

Error Code

0x000000ff

 

First thing you do is check the error log only to find that the error is a “0x000000ff”, which in laymans terms is a memory error. Which doesn’t give you a lot to go on. After a bit more digging (by turning off all of my installed PHP modules, I’ve found that it was my pdo_mysql extension, which Magento uses regularly.

 

How to solve:

So what you’re asking is “how do I solve this thing?”

The answer lies in thread safety. By default IIS installs a FastCgi Non-Thread Safe version, which gives (in some cases up to 40% increases in speed (referenced: http://www.iis-aid.com/articles/my_word/difference_between_php_thread_safe_and_non_thread_safe_binaries). But the downside is that you can’t use some thread safe binaries with some non-thread safe binaries.

The first thing you should do is check that your PHP binary is compatible with the extensions you’ve got. If you have no idea, go and replace your whole PHP install and re-associate the handler for it.

To do that firstly go get yourself the thread safe version of PHP from http://windows.php.net/download/ (unless you’re really needing non thread safe, in that case you’re a little on your own).

Unzip that file somewhere in an appropriate folder (On my machine I’ve used C:\Program Files (x86)\PHP-TS)

Go to your PHP Manger (if you don’t have this handy extension for IIS I suggest you get it from http://phpmanager.codeplex.com/documentation)

Click on Register new PHP Version, and point it to the php-cgi.exe file that you just unzipped. Then enable the modules you need, and try that pesky installation again.