How to Make PHP work with IIS

November 27, 2006 / General Discussion Web Hosting

This is one of the problems that we have constantly faced on Windows Serves. Although PHP seems installed, any .php pages fail to work on a browser with the error message ” Page not found” The problem is PHP and IIS hosting are not configured to interact and so IIS fails to recognize a .php extension.

To allow IIS to know how to handle CGI scripts with the .php extension, you must add a script mapping. In Internet Services Manager, select your website

Go to Properties
Go to the Home Directory tab
Click on the Configure button
Select the App Mappings tab
Insert the following: d:\path\to\php\php.exe %s %s

This is the location of the PHP executable. In addition, you can also add a similar script mapping for the .php3 extension if you so desire.

You should also mark each entry as being a Script interpreter so that you can mark your directories as having Script permission and not Execute thereby making them safer.

The reason for the two % arguments is to handle multiple parameters on ISINDEX queries, which are an obscure part of the CGI spec.