Nyní mám možnost pracovat na projektu, kde se na virtuálním aplikačním serveru používá Windows 2008 Enterprise, s tím nové IIS7. Vše běží na opravdu výkoném hardware. Rozhodl jsem se zvolit instalovat PHP jako ISAPI a ne jako FASTCGI. Již z minulých několika let se verze ISAPI modulu osvědčila ve stabilitě a rychlosti. A právě o těchto dvou jsem četl pozitivně i ve spojení s IIS7.
Stručný návod:
- Stažení PHP 5.2.8 z php.net jako ZIP balíčku. Verze 32 bit. 64 bit verze není podle informací stabilní. Rozbalit do d:\php5
- Nainstalovat IIS7 a podporu pro ISAPI v IIS7. Poté restartovat server. Bohužel až po restartu celého serveru(nestačí jen IIS7) se objeví možnost nastavit “ISAPI and CGI Restrictions”
- V IIS7 otevřít “Handler Mappings”, zvolit “Add Script Map”. Koncovka *.php, handler mapping: d:\php5\php5isapi.dll. Nakonec povolit ISAPI extension and execution of scripts.
- V IIS7 by mělo být vidět “ISAPI and CGI Restrictions”, na něj vlastnosti “Edit Feature Settings” a poté “Allow unspecified ISAPI modules”
- V Default Application Pool vybrat “Advanced Settings”. V něm povolit “Enable 32-bit Applications”. Popř. lépe vytvořit svou pool na 32 bit podporu pro PHP a defaultní nechat pro případný běh jiných modulů na 64 bit.
- PHP.ini se nahraje do c:\windows. Ještě předtím se ale v jiné složce musí správně nakonfigurovat, protože Windows 2008 neumožňují editaci přímo v systémové složce.

