Installazione di PHP su Internet Information Services

di Gianni Tomasicchio - 4 luglio 2005

database MySQL GD

Chi ha detto che PHP gira solo su Apache? E' vero che la piattaforma LAMP (Linux - Apache - MySQL - PHP) è ormai uno standard de facto nella fornitura di servizi web basati su PHP ma diverse sono le esigenze che ci possono portare a preferire soluzioni basate su Windows e Internet Information Services.

Infatti capita spesso che sviluppatori ASP o ASP.NET vogliano avvicinarsi al PHP. In questi casi risulta piuttosto scomodo far convivere IIS (necessario per l'esecuzione di script ASP) con Apache ed è quindi preferibile che  Internet Information Services sia in grado di supportare anche il PHP. In questo articolo vedremo proprio i passi necessari per raggiungere questo scopo. L'installazione verrà effettuata su Windows XP Professional SP2 in cui è stato precedentemente installato l'IIS 5.1.

E' doveroso a questo punto fare una premessa circa l'installazione di PHP in IIS. Questa integrazione può essere fatta in tre modi: come filtro ISAPI, attraverso le CGI oppure usando il Fast CGI.

L'installazione come filtro ISAPI garantisce buone prestazioni nell'esecuzione degli script ma può riservare spiacevoli sorprese in quanto a stabilità. Perciò tale approccio è sconsigliato.

Attraverso le CGI (Common Gateway Interface) l'IIS è in grado di chiamare il PHP ad ogni esecuzione di script, intercettarne l'output e inviarlo al browser. Se questa tecnica risulta particolarmente stabile, fornisce però prestazioni mediocri, adatte magari allo sviluppatore ma non sufficienti per la realizzazione di un server di produzione.

Infine la modalità Fast CGI è la migliore sia sul fronte delle prestazioni che della stabilità. Attualmente questa soluzione è sviluppata dalla Zend e fa parte del prodotto WinEnabler.

In questo articolo vedremo i semplici passi per integrare PHP attraverso le CGI, soluzione ottimale per lo sviluppatore anche perché a costo zero.

 

Pagine: 12 3 4 5

11 commenti

1 martedý 27 ottobre 2009, ore 13:48
Grazie!
Ottimo tutorial: preciso, chiaro, semplice e, soprattutto funziona tutto! :-)
2 martedý 17 novembre 2009, ore 11:17
Scusate ma a me c'è un problema:
ho fatto tutto come viene detto qui ma alla fine in http://localhost/info.php nei primi parametri dice diversamente e cioè


[...]
Server API CGI/FastCGI

Virtual Directory Support enabled

Configuration File (php.ini) Path C:\WINDOWS

Loaded Configuration File C:\php\php.ini

Scan this dir for additional .ini files (none)
[...]


sottolineo il parametro Configuration File (php.ini) Path impostato non so come a C:\WINDOWS.
Qualcuno sa risolvere il problema?
3 martedý 17 novembre 2009, ore 13:12
Rispondete quanto prima per favore
4 Vincenzo Vincenzo venerdý 5 marzo 2010, ore 09:49
Ottimo tutorial!
Funziona tutto...
Grazie!
5 Mpj79 Mpj79 lunedý 19 luglio 2010, ore 12:17
Scusatemi potreste gentilmente darmi un aiuto? Ho seguito alla lettera questa procedura ma quanto provo ad interrogare: http://localhost/info.php ottengo impossibile trovare la pagina. Eppure i passi gli ho eseguiti tutti alla lettera.Grazie
6 francesco francesco martedý 19 ottobre 2010, ore 15:22
Grazie funziona!
quindi le cartelle e i file del sito in php vanno copiate nella cartella C:\inetpub\wwwroot\mio sito
o vanno caricate con IIS ?
7 Gianni Tomasicchio Gianni Tomasicchio martedý 19 ottobre 2010, ore 16:49
@francesco

Puoi copiarli manualmente tu nella cartella wwwroot.
8 Antonio Colucci Antonio Colucci venerdý 17 dicembre 2010, ore 21:02
Ottimo lavoro. Utilizzato per installare PHP 5.3.4 su IIS 5.1 con Windows XP Pro
9 Paolo Paolo mercoledý 22 dicembre 2010, ore 09:42
Avrei bisogno di una mano. Ho fatto tutto quello indicato fin quasi alla fine, ma quando vado alla configurazione e quindi all'inserimento al mapping dell'eseguibile "php-cgi.exe" non trova il file. C'è qualcuno che può risolvermi il problema? Gli sarei molto grato!
10 Paolo Massaini Paolo Massaini mercoledý 22 dicembre 2010, ore 15:21
Ho fatto tutto quanto descritto senza problemi fino a quando sono rimasto bloccato sull'ultima operazione e cioè l'inserimento del file php-cgi.exe al mapping di configurazione per file inesistente (o almeno non mi da l'ok per il proseguimento). Se c'è qualcuno che mi può aiutare gline sarei molto grato!
11 antonio antonio martedý 28 dicembre 2010, ore 12:51
mi ritorna un errore Http 403.1, sembra che la cartella c:\php non è abilitata all' esecuzione di programmi. come posso risolvere?
grazie
Effettua l'accesso o registrati per inserire un commento