Alle Linux-Distributionen enthalten PHP. Es wird jedoch empfohlen, den neuesten PHP-Quellcode herunterzuladen, zu kompilieren und unter Linux zu installieren. Dadurch wird es einfacher, PHP fortlaufend zu aktualisieren, unmittelbar nachdem ein neuer Patch oder eine neue Version zum Herunterladen von PHP verfügbar ist. Dieser Artikel erklärt, wie man PHP5 von der Quelle unter Linux installiert.
1. Voraussetzungen
Der Apache-Webserver sollte bereits installiert sein. Siehe meinen vorherigen Beitrag zur Installation von Apache 2 unter Linux. Wenn Sie vorhaben, PHP mit MySQL zu verwenden, sollten Sie My SQL bereits installiert haben. Ich habe darüber geschrieben, wie man MySQL unter Linux installiert.
2. PHP herunterladen
Laden Sie den neuesten Quellcode von der PHP-Download-Seite herunter. Die aktuelle stabile Version ist 5.2.6. Verschieben Sie die Quelle nach /usr/local/src und extrahieren Sie sie wie unten gezeigt.
# bzip2 -d php-5.2.6.tar.bz2 # tar xvf php-5.2.6.tar
3. Installieren Sie PHP
Zeigen Sie alle für PHP verfügbaren Konfigurationsoptionen mit ./configure –-help an (zwei Bindestriche vor der Hilfe). Die am häufigsten verwendete Option ist –-prefix={install-dir-name}, um PHP in einem benutzerdefinierten Verzeichnis zu installieren.
# cd php-5.2.6 # ./configure --help
Im folgenden Beispiel wird PHP unter dem Standardspeicherort /usr/local/lib mit Apache-Konfiguration und MySQL-Unterstützung kompiliert und installiert.
# ./configure --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql # make # make install # cp php.ini-dist /usr/local/lib/php.ini
4. Konfigurieren Sie httpd.conf für PHP
Ändern Sie /usr/local/apache2/conf/httpd.conf, um Folgendes hinzuzufügen:
<FilesMatch "\.ph(p[2-6]?|tml)$"> SetHandler application/x-httpd-php </FilesMatch>
Stellen Sie sicher, dass die httpd.conf die folgende Zeile enthält, die während des PHP-Installationsprozesses automatisch eingefügt wird.
LoadModule php5_module modules/libphp5.so
Starten Sie den Apache wie unten gezeigt neu:
# /usr/local/bin/apache2/apachectl restart
5. Überprüfen Sie die PHP-Installation
Erstellen Sie unter /usr/local/apache2/htdocs eine test.php mit folgendem Inhalt
# vi test.php <?php phpinfo(); ?>
Gehen Sie zu http://local-host/test.php , das detaillierte Informationen über alle PHP-Konfigurationsoptionen und PHP-Module zeigt, die auf dem System installiert sind.
6. Fehlerbehebung während der Installation
Fehler 1:konfigurieren:Fehler:xml2-config nicht gefunden:
Bei der Ausführung von ./configure während der PHP-Installation erhalten Sie möglicherweise die folgende Fehlermeldung:
# ./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.
Installieren Sie thelibxml2-devel und zlib-devel wie unten gezeigt, um dieses Problem zu beheben.
# 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%]
Fehler 2:konfigurieren:Fehler:MySQL-Header-Dateien können nicht gefunden werden.
Bei der Ausführung von ./configure während der PHP-Installation erhalten Sie möglicherweise die folgende Fehlermeldung:
# ./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!
Installieren Sie das MySQL-devel-community-Paket wie unten gezeigt, um dieses Problem zu beheben.
# rpm -ivh /home/downloads/MySQL-devel-community-5.1.25-0.rhel5.i386.rpm Preparing... ########################################### [100%] 1:MySQL-devel-community ########################################### [100%]
Referenzen: PHP-Handbuch