PHP è un linguaggio di programmazione che consente di creare siti web dinamici, web API di supporto alle app per dispositivi mobili e molto altro. In questa guida vederemo come installare l'interprete PHP sul PC Windows e come configurare Apache HTTP Server​ con PHP.

Guida server web: come installare/configurare PHP Apache Windows 10

nota: In questo articolo ci concentreremo, nello specifico, sull'installazione di PHP in ambiente Windows. Per la guida equivalente incentrata su Linux:

» Leggi: La Grande Guida ad Apache, MySQL, PHP

La procedura è stata testata con Windows 10 Pro x64 (64 bit), ma è analoga per tutte le edizioni ed anche sotto Windows 8.1 o Windows 7.

Passo 1: Pre-requisiti

PHP per Windows richiede la presenza delle librerie Microsoft Visual C++. Sono le stesse indispensabili anche ad eseguire il server web Apache HTTP Server, ovvero l'altro componente che deve essere già presente sul PC prima di installare PHP. Prima di proseguire, è dunque fondamentale aver installato entrambi questi componenti:

» Leggi: Come installare Apache su Windows 10 e trasformare il PC in un server web: la Guida Definitiva

Guida server web: come installare/configurare PHP Apache Windows 10

Nel prosieguo di questa guida darò per scontato che abbiate installato Apache seguendo le indicazioni fornite nella guida dedicata e che siate riusciti a visualizzare la pagina HTML statica di esempio.

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 2: Scaricare PHP per Windows

Procediamo ora a scaricare PHP per Windows dal sito ufficiale:

» Download: PHP per Windows

Dalla pagina indicata, dobbiamo prelevare il .zip relativo all'ultima versione disponibile (le nuove release sono inserite in alto nella lista). In particolare:

  • se il PC monta Windows a 32 bit (x86): scaricare il file x86 Non Thread Safe
  • se il PC monta Windows a 64 bit (x64): scaricare il file x64 Non Thread Safe

» Leggi anche: Come scoprire se Windows è a 32 bit oppure 64 bit

Guida server web: come installare/configurare PHP Apache Windows 10 - php windows download

Passo 3: Estrazione dei file e spostamento della cartella

  1. Scompattiamo il .zip appena scaricato in una cartella temporanea a piacere
  2. Rinominiamo la cartella in PHP
  3. Spostiamo la cartella nella directory Programmi di Windows, ovvero C:\Program Files\PHP

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 4: Scaricare mod_fcgid

L'interprete PHP non risponde direttamente alle richieste dei browser web che visitano il nostro sito. Questo compito spetta ad Apache HTTP Server. A grandi linee, il flusso è il seguente:

  1. l'utente richiede una pagina del nostro sito
  2. Apache HTTP Server riceve la richiesta
  3. se si tratta di una pagina .php, Apache passa il file all'interprete PHP
  4. l'interprete PHP elabora il file e ritornare l'HTML "fatto e finito" ad Apache HTTP Server
  5. Apache HTTP Server ritorna l'HTML al browser dell'utente

Ci sono vari modi di consentire ad Apache e PHP di comunicare. Tradizionalmente si usa il modulo per Apache mod_php, che incorpora già l'intero interprete PHP. Questo approccio è però sconsigliato, poiché consuma parecchia RAM e non consente di sfruttare il multithreading di Apache. Per configurare Apache e PHP sotto Windows in modo ottimale, ci serve un altro modulo che consenta ad Apache di interfacciarsi con PHP tramite il protocollo FastCGI. Allo scopo, scarichiamo mod_fcgid:

» Download: mod_fcgi per Apache (Windows)

Localizziamo la sezione intitolata mod_fcgid (è la prima della lista). Da qui:

  • se il PC monta Windows a 32 bit (x86): scaricare il file Win32
  • se il PC monta Windows a 64 bit (x64): scaricare il file Win64

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 5: Installare mod_fcgid

Una volta scompattato il .zip appena ottenuto in una cartella temporanea a piacere, scorriamola fino a trovare il file mod_fcgid.so: è l'unica cosa che ci interessa di tutto il pacchetto

Guida server web: come installare/configurare PHP Apache Windows 10

Spostiamo mod_fcgid.so nella sottocartella modules di Apache. Se avete seguito le indicazioni fornite nella guida ad Apache su Windows, sarà C:\Program Files\Apache\modules.

Prestate attenzione ad estrarre nel percorso giusto! Il file deve finire dentro la sottocartella modules, non immediatamente dentro ad Apache!

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 6: Scaricare apache_php-fcgid.conf

Scarichiamo ora il file di configurazione per Apache che carica il modulo mod_fcgid.so e lo usa per invocare PHP tramite il protocollo FastCGI quando il browser degli utenti richiede una pagina .php:

» Download: apache_php-fcgid.conf

Scarichiamo questo file all'interno della sottodirectory conf di Apache: se avete seguito le indicazioni della guida ad Apache, si tratta di C:\Program Files\Apache\conf.

Prestate attenzione ad estrarre nel percorso giusto! Il file deve finire dentro la sottocartella conf, non immediatamente dentro ad Apache!

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 7: Caricare il file di configurazione

Ora che il file apache_php-fcgid.conf è al posto giusto, dobbiamo farlo caricare da Apache. Apriamo dunque il file httpd.conf presente nella stessa cartella.

Possiamo aggiungere la direttiva necessaria al caricamento del nuovo file di configurazione dove preferiamo. Ad esempio: prima delle istruzioni # Virtual Hosts. La stringa da aggiungere è la seguente:

# PHP

Include conf/apache_php-fcgid.conf

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 8: Rimuovere DirectoryIndex

Dobbiamo apportare un'altra modifica al file httpd.conf.

La direttiva DirectoryIndex stabilisce quale file restituire quando l'utente richiede via browser una directory oppure il dominio del nostro sito senza indicare un file specifico (http://miosito.com). Di default, Apache restituisce index.html, ma per generare dinamicamente la pagina con PHP dobbiamo usare index.php.

Il file apache_php-fcgid.conf include già la direttiva configurata in modo opportuno, ma per renderla effettiva dobbiamo eliminare manualmente il default. All'interno dello stesso httpd.conf, cercare DirectoryIndex quindi cancellare completamente tutte le istruzioni e i commenti compresi fra queste frasi (estremi compresi):

# DirectoryIndex: sets the file that Apache...

...

</IfModule>

Guida server web: come installare/configurare PHP Apache Windows 10

Salvate le modifiche e chiudete il file: qui abbiamo finito.

Passo 9: Riavviare Apache

Procediamo ora a riavviare il servizio di Apache tramite linea di comando ("C:\Program Files\Apache\bin\httpd.exe" -k restart) oppure con Apache Service Monitor

Guida server web: come installare/configurare PHP Apache Windows 10

Passo 10: index.php

Se già non l'avete fatto, scaricate il pacchetto HTML e PHP di esempio:

» Download: File index per test web server

Scompattatelo nella cartella che contiene il vostro sito e otterrete il file index.php di test.

Passo 11: Test di PHP

Tutto è pronto: apriamo il browser web e digitiamo l'URL del nostro sito locale (http://localhost, ad esempio) per visitare il sito in esecuzione sul PC stesso. Se tutto funziona correttamente, vedrete la pagina di test

[se state usando Microsoft Edge e localhost non risponde, seguite questa guida: Microsoft Edge e sito locale (http://localhost) che non si apre: come risolvere l'errore con Apache o IIS]

Notate la data mostrata a centro pagina: se viene visualizzata correttamente, significa che PHP sta funzionando correttamente ed avete concluso

Guida server web: come installare/configurare PHP Apache Windows 10

Se lo spazio dopo la freccia rimane bianco, invece, c'è qualcosa che non va. La primissima cosa da fare è assicurasi di aver riavviato Apache, quindi ripercorrere i vari Passi di questo articolo fino ad individuare l'errore.

Cosa fare ora?

Arrivati a questo punto, PHP è installato e funzionante in ambiente Windows. Probabilmente, però, vorremo installare anche un database come MySQL, indispensabile per eseguire un gestore di contenuti (CMS) come WordPress o pressoché qualsiasi altra cosa. Per il resto della guida:

» Leggi: Installare e configurare un server web: La Grande Guida ad Apache, MySQL, PHP su Windows e Linux in modo facile