Všechny distribuce Linuxu jsou dodávány s PHP. Doporučuje se však stáhnout nejnovější zdrojový kód PHP, zkompilovat a nainstalovat na Linux. To usnadní průběžný upgrade PHP ihned poté, co je k dispozici ke stažení nový patch nebo vydání z PHP. Tento článek vysvětluje, jak nainstalovat PHP5 ze zdroje na Linux.
1. Předpoklady
Webový server Apache by již měl být nainstalován. Viz můj předchozí příspěvek o Jak nainstalovat Apache 2 na Linux. Pokud plánujete používat PHP s MySQL, měli byste mít My SQL již nainstalované. Psal jsem o tom, jak nainstalovat MySQL na Linux.
2. Stáhněte si PHP
Stáhněte si nejnovější zdrojový kód ze stránky stahování PHP. Aktuální stabilní verze je 5.2.6. Přesuňte zdroj do /usr/local/src a rozbalte jej, jak je ukázáno níže.
# bzip2 -d php-5.2.6.tar.bz2 # tar xvf php-5.2.6.tar
3. Nainstalujte PHP
Prohlédněte si všechny možnosti konfigurace dostupné pro PHP pomocí ./configure –-help (dvě pomlčky před nápovědou). Nejčastěji používanou možností je –-prefix={install-dir-name} pro instalaci PHP do uživatelem definovaného adresáře.
# cd php-5.2.6 # ./configure --help
V následujícím příkladu bude PHP zkompilováno a nainstalováno do výchozího umístění /usr/local/lib s konfigurací Apache a podporou MySQL.
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql # make # make install # cp php.ini-dist /usr/local/lib/php.ini
4. Nakonfigurujte httpd.conf pro PHP
Upravte soubor /usr/local/apache2/conf/httpd.conf a přidejte následující:
<FilesMatch "\.ph(p[2-6]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch>
Ujistěte se, že httpd.conf obsahuje následující řádek, který se automaticky vloží během procesu instalace PHP.
LoadModule php5_module modules/libphp5.so
Restartujte apache, jak je znázorněno níže:
# /usr/local/bin/apache2/apachectl restart
5. Ověřte instalaci PHP
Vytvořte test.php pod /usr/local/apache2/htdocs s následujícím obsahem
# vi test.php <?php phpinfo(); ?>
Přejděte na http://local-host/test.php , kde se zobrazí podrobné informace o všech možnostech konfigurace PHP a modulech PHP nainstalovaných v systému.
6. Odstraňování problémů během instalace
Chyba 1:configure:error:xml2-config not found:
Při provádění ./configure během instalace PHP se může zobrazit následující chyba:
# ./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.
Chcete-li tento problém vyřešit, nainstalujte soubory libxml2-devel a zlib-devel, jak je uvedeno níže.
# 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%]
Chyba 2:configure:error:Nelze najít soubory záhlaví MySQL.
Při provádění ./configure během instalace PHP se může zobrazit následující chyba:
# ./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!
Tento problém vyřešíte instalací balíčku MySQL-devel-community, jak je uvedeno níže.
# rpm -ivh /home/downloads/MySQL-devel-community-5.1.25-0.rhel5.i386.rpm Preparing... ########################################### [100%] 1:MySQL-devel-community ########################################### [100%]
Odkazy: PHP manuál