Les Services d'informations Internet (Internet Information Services - IIS) sont intégrés à Windows. Sur Windows Server, le rôle IIS peut être ajouté via le Gestionnaire de serveur. Le module CGI doit être inclus. Sur les bureau Windows, IIS doit être ajouté via le Panneau de configuration. la documentation Microsoft fournit » des instructions détaillées pour activer IIS. Pour le développement, » IIS/Express peut également être utilisé.
Note: La version Non-Thread Safe (NTS) de PHP doit être installée lors de l'utilisation du gestionnaire FastCGI avec IIS.
Dans IIS Manager, installez le module FastCGI et ajoutez une correspondance de gestionnaire pour
.php
au chemin de php-cgi.exe
(pas php.exe)
La commande APPCMD peut être utilisée pour scripter la configuration IIS.
Exemple #1 Ligne de commande pour configurer IIS et PHP
@echo off REM télécharger le fichier .ZIP de la version de PHP depuis http://windows.php.net/downloads/ REM chemin du répertoire dans lequel le fichier .ZIP de PHP a été décompressé (sans \ final) set phppath=c:\php REM Enlève les gestionnaires PHP actuels %windir%\system32\inetsrv\appcmd clear config /section:system.webServer/fastCGI REM La commande suivante générera un message d'erreur si PHP n'est pas installé. Cela peut être ignoré. %windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /-[name='PHP_via_FastCGI'] REM Configure le gestionnaire PHP %windir%\system32\inetsrv\appcmd set config /section:system.webServer/fastCGI /+[fullPath='%phppath%\php-cgi.exe'] %windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /+[name='PHP_via_FastCGI',path='*.php',verb='*',modules='FastCgiModule',scriptProcessor='%phppath%\php-cgi.exe',resourceType='Unspecified'] %windir%\system32\inetsrv\appcmd set config /section:system.webServer/handlers /accessPolicy:Read,Script REM Configure les variables FastCGI %windir%\system32\inetsrv\appcmd set config -section:system.webServer/fastCgi /[fullPath='%phppath%\php-cgi.exe'].instanceMaxRequests:10000 %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='%phppath%\php-cgi.exe'].environmentVariables.[name='PHP_FCGI_MAX_REQUESTS',value='10000']" %windir%\system32\inetsrv\appcmd.exe set config -section:system.webServer/fastCgi /+"[fullPath='%phppath%\php-cgi.exe'].environmentVariables.[name='PHPRC',value='%phppath%\php.ini']"