I've inherited this Windows Server 2008 server that we use as our primary web server and have lately been running into some oddities. Previously, PHP was installed by just downloading a zip file, extracting it to a specific file location (C:\Apps\php), make the appropriate php.ini changes, and call it a day. Since I thought that was a bit inefficient, I opted to move away from that model and go with the Web Platform Installer route, mostly to make upgrades more simple and efficient. Now I believe that I've removed all references to the older PHP install, but our Wordpress install is telling us otherwise.

Sometimes, in our PHP error logs, Wordpress has been throwing some random fatal errors for reasons that don't need to be mentioned here, but it references old pear extensions for the old PHP install. That confused me because in a php_info(), everything is referencing the new PHP and nothing about the old pear install, and running pear config-show only makes references to the new PHP install.

So I'm at a loss as to why it seems old PHP stuff is still being used. I'd like to configure IIS to only use whatever I specify whenever I install a new PHP version from the WPI. Any help would be amazing, thank you!


Have you tried recreating the IIS FastCGIModule for PHP? Check the first part of this article. Also, check for the Old PHP instance on Registry Editor, I had a similar problem some years ago with Symantec Endpoint Protection Manager and solved it deleting all relevant registries (previously backed up)


Try switching the PHP handler to use the newer version of the .EXE that you just installed.

  1. In IIS Manager, select the website on the left pane, and then double click the Handler Mappings in the right pane.
  2. Find the entry containing the *.php handler, right click that line and select Edit.
  3. Check the Executable property to see if it is pointing to the older C:\Apps\php\bin\php-cgi.exe file or the new path that you just installed to.

You can also set the PHP handler path at the top level server that will be inherited by new websites that are created.

  • I changed all of those when I installed the new version of PHP, so it's using my WPI one. :( – Chiggins Aug 11 '14 at 19:08
  • It's possible that a subfolder on the website contains a Handler Mapping pointing to the old version, where the top level website points to the correct one. If this is not running at the top level, check each folder's IIS Handler Mapping settings. Just in case, you can also check each folder manually for a web.config file, which is where specific folder settings are stored. Make sure there isn't a <handlers> element in there somewhere. – Brain2000 Aug 11 '14 at 19:22
  • Just curious, try running a "pear config-get" instead of "pear config-show" – Brain2000 Aug 11 '14 at 19:29

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.