Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Integrazione di Php come modulo di Apache

Integrare Php all'interno del Web Server Apache: la modifica del file di configurazione httpd.conf
Integrare Php all'interno del Web Server Apache: la modifica del file di configurazione httpd.conf
Link copiato negli appunti

Semplificando al massimo possiamo dire che il compito di un server Web è quello di ricevere le richieste HTTP e fornire al client (di solito il browser) il contenuto dei file richiesti. Tuttavia, nel caso dei file con estensione .php, prima di esaudire la richiesta il Web Server effettua il parsing e l'esecuzione del codice Php contenute nel file. Affinchè ciò avvenga è necessario che l'interprete si trovi integrato nel Web Server, ed è quanto ci accingiamo ad illustrare.

Torniamo al file di configurazione di Apache (nel nostro esempio C:ProgrammiApache GroupApache2confhttpd.conf), apriamolo con un editor di testo (avete già fatto il backup come consigliato in precedenza, vero?) scorriamo il testo fino a giungere in fondo all'elenco che contiene una lunga serie di "LoadModule ..." molti dei quali commentati.

# ...

# LoadModule speling_module modules/mod_speling.so
# LoadModule status_module modules/mod_status.so
# LoadModule unique_id_module modules/mod_unique_id.so

LoadModule userdir_module modules/mod_userdir.so
# LoadModule usertrack_module modules/mod_usertrack.so
# LoadModule vhost_alias_module modules/mod_vhost_alias.so
# LoadModule ssl_module modules/mod_ssl.so

Aggiungiamo al termine della lista le righe seguenti

# Start Php integration
LoadModule php4_module "c:/php/php4apache2.dll"
AddType application/x-httpd-php .php
PhpIniDir "C:/php"
#End Php integration

La prima riga indica ad Apache dove trovare il modulo per l'integrazione di Php, la seconda dice che i file con estensione .php devono essere elaborati attraverso Php. L'ultima istruzione specifica dove vada cercato il file di configurazione php.ini.

- Php 5: l'httpd.conf deve esere modificato come segue:

Valido solo per Php 5 e Apache 2.0.x

# Start Php integration
LoadModule php5_module "c:/php/php5apache2.dll"
AddType application/x-httpd-php .php
PhpIniDir "C:/php"
# End Php integration

Per comodità dei lettori aggiungiamo anche la sintassi per includere Php anche con Apache 2.2 evidenziando in rosso le differenze:

Valido solo per Php 5 e Apache 2.2.x

# Start Php integration
LoadModule php5_module c:/php/php5apache2_2.dll
AddType application/x-httpd-php .php
PhpIniDir "C:/php"
# End Php integration

Queste righe non devono trovarsi necessariamente in quella posizione, ma personalmente è più comodo e leggibile raggruppare tutte le istruzioni in un unico blocco. Un'ultima aggiunta al file httpd.conf è necessaria affinchè anche il file index.php vada a far parte dei file che il Web Server cerca automaticamente quando viene indicato il percorso di una directory (ad esempio www.sito.it/miadir/). Scorriamo ancora un po' il file di configurazione fino a raggiungere questo blocco

#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents. The MultiViews Option can be used for the
# same purpose, but it is much slower.
#

DirectoryIndex index.html index.html.var

è sufficiente modificarlo come segue

DirectoryIndex index.html index.html.var index.php

Salviamo tutte le modifiche e passiamo alla configurazione vera e propria di Php attraverso il file php.ini.

Ti consigliamo anche