PHP7 ist bereits seit einiger Zeit auf dem Markt und es ist allgemein bekannt, dass es eine erhebliche Leistungssteigerung mit sich bringt. Nehmen wir nun an, wir haben einen älteren Server mit einem CentOS6-System, auf dem einige alte Projekte laufen, und die Standard-PHP-Version ist 5.3. Obwohl wir auf die PHP7-Version aktualisieren können, ist die alte Version nicht mit PHP7 kompatibel. Daher können wir keinen einheitlichen Ansatz verfolgen. Am besten ist die Koexistenz von PHP 5.3 und PHP 7. Daher können wir in Betracht ziehen, Docker zu verwenden, um andere PHP-Versionen zu installieren. Dadurch wird die Unabhängigkeit von der Umgebung sichergestellt und es kommt nur zu geringen Leistungseinbußen. Nachfolgend werden die einzelnen Schritte anhand der Installation der PHP7-Version als Beispiel vorgestellt. Installieren Sie Docker auf CentOS6: yum install -y https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm Dienst Docker starten chkconfig Docker ein Ziehen Sie das php7.2-Image docker pull php:7.2-fpm Erstellen Sie ein neues Verzeichnis und eine neue Datei /usr/local/docker-php7/zz-docker.conf und speichern Sie den folgenden Inhalt: [global] daemonisieren = nein [www] hören = 9001 ;Um die Variablen in php.ini zu ändern, ändern Sie einfach die entsprechenden Attribute des php_value-Arrays php_value[session.save_handler] = redis php_value[Sitzung.Speicherpfad] = tcp://127.0.0.1:6379 php_value[max_post_size] = 20M php_value[maximale_Uploaddateigröße] = 20 M php_value[Datum.Zeitzone] = Asien/Shanghai php_value[opcache.enable] = 1 php_value[opcache.enable_cli] = 1 Führen Sie den Container aus und verwenden Sie den Hostmodus, um mit dem Host zu kommunizieren docker run -d -v /var/www/html:/var/www/html -v /usr/local/docker-php7/zz-docker.conf:/usr/local/etc/php-fpm.d/zz-docker.conf --net=host --name php7.2 php:7.2-fpm Installieren Sie verschiedene gängige PHP-Erweiterungen docker exec php7.2 apt-get update -y docker exec php7.2 apt-get install -y libfreetype6-dev docker exec php7.2 apt-get install -y libjpeg62-turbo-dev docker exec php7.2 apt-get install -y libpng-dev Docker Exec PHP7.2 Docker-PHP-Ext-Installieren PDO_MYSQL Docker Exec PHP7.2 Docker-PHP-Ext-Install MySQLI Docker Exec PHP7.2 Docker-PHP-Ext-Install Iconv Docker Exec PHP7.2 Docker-PHP-Ext-Install GD Docker Exec PHP7.2 Docker-PHP-Ext-Installieren von MBstring Docker Exec PHP7.2 Docker-PHP-Ext-Install Opcache #Ändern Sie übrigens die Konfiguration docker exec php7.2 mv /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini Da die Redis-Erweiterung nicht über #Geben Sie die Befehlszeile im Container docker exec -it php7.2 sh ein Docker-PHP-Quellcode-Extrakt curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/4.2.0.tar.gz tar -zxvf /tmp/redis.tar.gz -C /usr/src/php/ext mv /usr/src/php/ext/phpredis-* /usr/src/php/ext/phpredis docker-php-ext-install phpredis #Drücken Sie hier Strg+P und Strg+Q, um den Container zu verlassen. Docker startet php7.2 neu Der obige Befehl hat php7.2 erfolgreich auf Port 9001 ausgeführt. Als nächstes richten Sie das PHP-Skript einfach auf Port 9001 in der Nginx-Konfiguration (ursprünglich zeigte es auf Port 9000). Zusammenfassen Oben habe ich Ihnen die Verwendung von Docker zum Ausführen mehrerer PHP-Versionen auf dem Server vorgestellt. Ich hoffe, es wird Ihnen hilfreich sein. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Analyse des Prinzips von Vue nextTick
1. Blockebenenelement: bezieht sich auf die Fähigk...
1. DOCTYPE ist unverzichtbar. Der Browser bestimm...
In diesem Artikel wird die Installations- und Kon...
eins, G:\MySQL\MySQL Server 5.7\bin> mysqld --...
1. Kurze Einführung in die Veranstaltung Ein Erei...
1. Funktion Wird hauptsächlich verwendet, um den ...
Ohne weitere Umschweife werde ich den Code direkt...
Version: centos==7.2 jdk==1.8 Zusammenfluss == 6....
bmi Voyager Heugabel Ulster Lebensmittelhändler F...
Informationen zu CSS3-Variablen Fügen Sie beim De...
Sie können es direkt in der Linux-Shell-Umgebung ...
Dieser Artikel stellt vor Online-Vorschau und Dow...
Fix für Probleme mit historischen Linux-Images De...
Vorwort Was ist Datentypkonvertierung? Der Standa...
=================================================...