Heim > Artikel > Backend-Entwicklung > Der detaillierteste Prozess der PHP-Installation unter Linux
Dieser Artikel teilt Ihnen hauptsächlich den detailliertesten Prozess der Installation von PHP unter Linux mit, gefolgt von der Installation von PHP und der Installation von MySQL ist zu lang, um es in einem Artikel zusammenzufassen. Es wird separat geschrieben. Nach der Installation von PHP handelt es sich um die Konfiguration von MySQL.
Erstens: Überprüfen Sie, ob PHP installiert ist
1) Yum-Installationsprüfung: Yum-Liste installiert |grep php
2) RPM-Installationsprüfung: rpm -qa | grep php
3) Es gibt viele Möglichkeiten abzufragen, ob Sie es selbst kompilieren und installieren, z. B. das Finden des ausführbaren Programms von PHP oder das Überprüfen des Prozesses ps -ef grep php |.
Zweitens: Überprüfen Sie, ob PHP nicht installiert ist. Sie können die Vorinstallationssoftware vor der PHP-Installation vorbereiten. Sie können sie natürlich auch selbst kompilieren und installieren nicht störend. Ich werde hier nicht auf Details eingehen.
1) zlib und zlib-devel zlib bietet eine Datenkomprimierungsfunktionsbibliothek und ist auch die Front-End-Software von nginx. Da zlib die Zlib-Erweiterung von PHP kompilieren muss, wird die Header-Datei zlib.h verwendet Wird während der Kompilierung benötigt. Die Header-Dateien befinden sich in zlib-devel, daher muss auch zlib-devel heruntergeladen werden.
2) libxml2 und libxml-devel libxml2 ist eine XML-Bibliothek in C-Sprache, die einfach verschiedene Operationen an XML ausführen kann, XPath-Abfragen unterstützt und teilweise die XSLT-Konvertierung und andere Funktionen unterstützt.
3) libxslt und libxslt-devel wird angezeigt, dass die Datei xslt.config nicht gefunden werden kann, eine Erweiterung zum Konvertieren von XML in andere Formate.
3) OpenSSL- und OpenSSL-Devel Secure Socket Layer-Kryptografiebibliothek
4) JPEG-JPEG-Bibliothek von IJG, PHP-GD-Bibliothek erforderlich.
5) libpng ist eine relativ einfache, plattformübergreifende Bibliothek, die zum Lesen und Schreiben von PNG-Dateien geschrieben wurde. Sie kann dabei helfen, jede Pixelzeile in PNG-Dateien einfach zu lesen und zu schreiben gd-Bibliothek.
6) freetype und freetype-devel sind kostenlose, quelloffene und portable Font-Engines, die eine einheitliche Schnittstelle für den Zugriff auf mehrere Font-Formate bieten, sofern sie nicht installiert sind , oder Die Version ist zu niedrig. Wenn Sie bei der Installation von PHP die Installation der gd-Bibliothek festlegen, wird ein Fehler gemeldet. Wenn -devel nicht installiert ist, wird außerdem ein Fehler gemeldet Beim Kompilieren der Erweiterung fehlt der Fehler.
7) gd gd ist eine Erweiterungsbibliothek für PHP zur Verarbeitung von Grafiken
8) Curl, da die Version in meinem Yum zu niedrig ist Also habe ich es selbst kompiliert und installiert. Die Installationsmethode ist sehr einfach: Wget Curl lädt die Adresse herunter, dekomprimiert den TAR, erstellt einen neuen Ordner /usr/local/curl und gibt dann den dekomprimierten Curl-Ordner zur Konfiguration ein. /configure --prefix=/ usr/local/curl reicht aus und schließlich werden make und make install installiert.
Hinweis: xxx-devel ist das Entwicklungspaket der xxx-Software, einschließlich Header-Dateien, statischen Bibliotheken und sogar Quellcode.
Drei: PHP-Download und Installation
1) Verwenden Sie wget, um die tar.gz-Datei von PHP herunterzuladen: wget http://br2.php.net/get/php-7.2.2 .tar.gz
2) Entpacken Sie die tar.gz-Datei: tar zxvf php-7.2.2.tar.gz
3) Erstellen Sie einen neuen Ordner, in dem PHP später installiert wird: mkdir /usr/local/ php, geben Sie dann den dekomprimierten PHP-Installationspaketordner ein und konfigurieren Sie configure:
./configure --prefix=/usr/local/php --with-curl=/usr/local/ curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli - -with- openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with -zlib - -enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop - -enable- Soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip
Hinweis:
--prefix=Installationsverzeichnis
--with-use package name [= Paketverzeichnis]
--enable-functions that need to activate
Viertens: PHP-bezogene Dateien konfigurieren
1 ) Konfigurieren Sie php.ini, dies ist die Konfigurationsdatei von PHP: cp /home/myload/php-7.2.2/php.ini-development /usr/local/php/lib/php.ini
2 ) Konfigurieren Sie php-fpm.conf, dies ist die php-fpm-Konfigurationsdatei: cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
3) Konfiguration www.conf, die Benutzerkonfigurationsdatei: cp etc/php-fpm.d/www.conf.default etc/php-fpm.d/www.conf
4) Kopieren Die php-fpm-Startdatei in Eine Kopie des Ordners init.d ist praktisch, um PHP zu starten: cp -R sbin/php-fpm /etc/init.d/php-fpm
Fünf: Starten Sie PHP und Bestätigen Sie, ob die Installation erfolgreich ist
Führen Sie den Befehl /etc/init.d/php-fpm aus
Überprüfen Sie, ob es gestartet ist: ps -ef |grep php Sie können sehen, welche Prozesse PHP hat gestartet
Sechs: Installation erfolgreich Nach der Konfiguration von Nginx zur Unterstützung von PHP
1) Ändern Sie die php.ini-Datei, vim /usr/local/php/lib/php.ini
Wenn Sie nach der Konfiguration cgi.fix_pathinfo=1 suchen, die Kommentare entfernen und sie in cgi.fix_pathinfo=0 ändern, hängt dies nicht mit der PHP-Konfiguration zusammen, die Nginx unterstützt, sondern mit einer Sicherheitslücke, die für PHP unter Nginx spezifisch ist ist Der Wert ist 1. Der Benutzer kann den Trojaner hochladen, indem er ein Bild hochlädt, dann über die URL auf die Bildadresse zugreift und nach der Adresse /xxx.php hinzufügt, um das Bild als PHP-Datei auszuführen existiert in Nginx, Apache und IIS haben dieses Problem nicht
Zu den oben genannten Problemen können Sie direkt auf den Blog von Bruder Niao verweisen, der sehr detailliert geschrieben ist: http://www.laruence.com/ 2010/05/20/1495.html
2) Webspezifische Gruppen und Benutzer konfigurieren
www-Benutzergruppe hinzufügen: groupadd www
Benutzer www unter www-Benutzergruppe hinzufügen : useradd -g www www
3) Ändern Sie die Konfiguration von php-fpm.conf
Entfernen Sie den Kommentar „user=nobody“ und ändern Sie „nobody“ in den oben konfigurierten www-Benutzer
Entfernen Sie den Kommentar „group=nobody“ und ändern Sie „nobody“ in die oben konfigurierte www-Benutzergruppe
Überprüfen Sie abschließend, ob der letzte Include-Wert in php-fpm.conf die richtige www.conf-Verzeichnisadresse ist. Ändern Sie es in die richtige Verzeichnisadresse.
4) Ändern Sie die www.conf-Konfiguration
Entfernen Sie den Kommentar „user=nobody“ und ändern Sie „nobody“ in den oben konfigurierten www-Benutzer
Entfernen Sie den Kommentar „group=nobody“ und Ändern Sie niemanden in die oben konfigurierte www-Benutzergruppe
5) Ändern Sie die nginx.conf-Datei /etc/local/nginx/conf/nginx.conf
und entfernen Sie den Kommentar #user=nobody Und Ändern Sie es in user=www
Entfernen Sie den Kommentar von location ~ .php${...} und ändern Sie /scripts in fastcgi_param in $document_root
Fügen Sie abschließend index.php nach dem Standardindex in location/{...} hinzu, um sicherzustellen, dass index.php als Standard-Homepage verwendet wird
6) Sie können php-fpm und nginx neu starten und dann /etc/init.d/php-pfm neu starten, um nginx zu stoppen. und führen Sie dann /usr/local/nginx/sbin/php aus, um neu zu starten.
7) Erstellen Sie eine PHP-Datei im HTML-Verzeichnis, deren Inhalt phpinfo(); ist, und greifen Sie dann auf die Dateiadresse im Browser zu, um zu sehen, ob die richtigen PHP-bezogenen Informationen korrekt angezeigt werden , die Konfiguration ist erfolgreich.
Sieben: Arbeiten Sie mit Apache zusammen, um PHP zu unterstützen. Dies wird später hinzugefügt, um fortzufahren...
Verwandte Empfehlungen:
PHP-Fehleraufzeichnung bei der Linux-Installation
Linux-Installations-PHP-Modul --with-mysql --with-mysqli Müssen Sie MySQL installieren?
Linux-Installations-PHP und Memcache Prozessprotokoll
Das obige ist der detaillierte Inhalt vonDer detaillierteste Prozess der PHP-Installation unter Linux. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!