.But : Faire fonctionner php et .net sous le même site.
La sécurité étant déléguée à iis. Le trapping des erreurs serveurs php peut très bien se faire en php.

Modifier

Installation

Modifier

DLL FastCGI

Téléchargez et executez :http://www.iis.net/downloads/default.aspx?tabid=34&g=6&i=1521
Cela install des dll sur : %WINDIR%\system32\inetsrv

Modifier

Installation de php

http://www.php.net/downloads
Php 5.x en  (conseillé 5.2.1 >) non-thread-safe PHP
la version 5.2.6 contient déjà dans son installeur quelques facilités.

Modifier

configuration

Placez vous en ligne de commande sur : %WINDIR%\system32\inetsrv
tapez :


cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:\PHP\php-cgi.exe"                    (si php installé sur c:\php)


ou pour un seul site :

cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:\PHP\php-cgi.exe" –site:1         (1 étant l'id de votre site)


L'id du site est visible sous iis 6 dans la console de management lorsque vous avez la liste des sites dans la fenêtre de droite (à gauche le serveur cliqué).

Attention au copier/coller le caractère "-" serais alors mal interprété, retaper le directement dans la console.

note : pour une configuration manuelle voir : http://learn.iis.net/page.aspx/247/using-fastcgi-to-host-php-applications-on-iis-60/

Modifier

Modifiez php.ini

fastcgi.impersonate = 1              Permet d'utiliser le compte d'impersonification d'iis
cgi.fix_pathinfo=1                       Pour éviter l'utilisation de chemin non relatif au site.
cgi.force_redirect = 0.

Modifier

Modification des performances


cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:10000           (10000 instances supportées)
cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000        (Recyclage de l'application au delà de 10000 request)

Modifier

Test


Mettre une page en racine

phpinfo.php contenant
{BR}
<?php{BR}
{BR}
{BR}
phpinfo(); {BR}
{BR}
?>{BR}



Modifier

Soucis


Modifier

PAGE INTROUVABLE

vérification de la configuration et de l'id de votre site.
regarder le fichier C:\WINDOWS\system32\inetsrv\fcgiext.ini
  • qui doit contenir :  (xxxx : id de votre site)
Types
php:xxxxx=PHP

PHP
ExePath=C:\PHP\php-cgi.exe
InstanceMaxRequests=10000
EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000
  • rejouer les scripts
    ceux-ci peuvent être rejoués plusieurs fois sans incidence.
Modifier

Erreur Fast CGI

    Il faut alors créer une autre application pool sans la surveillance du CPU.

Points importants