Tutte le distribuzioni Linux vengono fornite con PHP. Tuttavia, si consiglia di scaricare l'ultimo codice sorgente PHP, compilare e installare su Linux. Ciò semplificherà l'aggiornamento di PHP su base continuativa subito dopo che una nuova patch o release è disponibile per il download da PHP. Questo articolo spiega come installare PHP5 dal sorgente su Linux.
1. Prerequisiti
Il server web Apache dovrebbe essere già installato. Fare riferimento al mio post precedente su Come installare Apache 2 su Linux. Se hai intenzione di utilizzare PHP con MySQL, dovresti avere già installato My SQL. Ho scritto su Come installare MySQL su Linux.
2. Scarica PHP
Scarica l'ultimo codice sorgente dalla pagina di download di PHP. L'attuale versione stabile è 5.2.6. Sposta la sorgente in /usr/local/src ed estrai è come mostrato di seguito.
# bzip2 -d php-5.2.6.tar.bz2 # tar xvf php-5.2.6.tar
3. Installa PHP
Visualizza tutte le opzioni di configurazione disponibili per PHP usando ./configure –-help (due trattini davanti a help). L'opzione più comunemente usata è –-prefix={install-dir-name} per installare PHP su una directory definita dall'utente.
# cd php-5.2.6 # ./configure --help
Nell'esempio seguente, PHP verrà compilato e installato nella posizione predefinita /usr/local/lib con configurazione Apache e supporto MySQL.
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql # make # make install # cp php.ini-dist /usr/local/lib/php.ini
4. Configura httpd.conf per PHP
Modificare /usr/local/apache2/conf/httpd.conf per aggiungere quanto segue:
<FilesMatch "\.ph(p[2-6]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch>
Assicurati che httpd.conf abbia la seguente riga che verrà inserita automaticamente durante il processo di installazione di PHP.
LoadModule php5_module modules/libphp5.so
Riavvia l'Apache come mostrato di seguito:
# /usr/local/bin/apache2/apachectl restart
5. Verifica l'installazione di PHP
Crea un test.php sotto /usr/local/apache2/htdocs con il seguente contenuto
# vi test.php <?php phpinfo(); ?>
Vai a http://local-host/test.php , che mostrerà informazioni dettagliate su tutte le opzioni di configurazione PHP e sui moduli PHP installati sul sistema.
6. Risoluzione dei problemi durante l'installazione
Errore 1:configure:errore:xml2-config non trovato:
Durante l'esecuzione di ./configure durante l'installazione di PHP, potresti ricevere il seguente errore:
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql Configuring extensions checking whether to enable LIBXML support... yes checking libxml2 install dir... no checking for xml2-config path... configure: error: xml2-config not found. Please check your libxml2 installation.
Installa thelibxml2-devel e zlib-devel come mostrato di seguito per risolvere questo problema.
# rpm -ivh /home/downloads/linux-iso/libxml2-devel-2.6.26-2.1.2.0.1.i386.rpm /home/downloads/linux-iso/zlib-devel-1.2.3-3.i386.rpm Preparing... ########################################### [100%] 1:zlib-devel ########################################### [ 50%] 2:libxml2-devel ########################################### [100%]
Errore 2:configurazione:errore:impossibile trovare i file di intestazione MySQL.
Durante l'esecuzione di ./configure durante l'installazione di PHP, potresti ricevere il seguente errore:
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql checking for MySQL UNIX socket location... /var/lib/mysql/mysql.sock configure: error: Cannot find MySQL header files under yes. Note that the MySQL client library is not bundled anymore!
Installa il pacchetto MySQL-devel-community come mostrato di seguito per risolvere questo problema.
# rpm -ivh /home/downloads/MySQL-devel-community-5.1.25-0.rhel5.i386.rpm Preparing... ########################################### [100%] 1:MySQL-devel-community ########################################### [100%]
Riferimenti: Manuale PHP