Heim  >  Artikel  >  Backend-Entwicklung  >  Bringen Sie Ihnen bei, PHP7 zu installieren und mit PHP5 zu koexistieren

Bringen Sie Ihnen bei, PHP7 zu installieren und mit PHP5 zu koexistieren

藏色散人
藏色散人nach vorne
2021-02-24 17:56:382163Durchsuche

Empfehlung: „PHP7

Installieren Sie PHP7 und koexistieren Sie mit PHP5

Starten

Ich habe zuvor eine lamp-Umgebung auf dem Server erstellt und möchte zu nginx wechseln mit stärkerer Leistung Als Serversoftware möchte ich PHP5 auf PHP7 aktualisieren.
Keine Notwendigkeit, auf Details zur Installation von Nginx einzugehen: sudo apt-get install nginx, ändern Sie die Apache-Port, bevor Sie ng starten. lamp环境,想换用性能更强的nginx作为服务器软件,又想将php5升级为php7.
安装nginx无需赘述:sudo apt-get install nginx,启动ng前修改apache的端口。

安装php7

源码在http://php.net/downloads.php 下载,并解压。

# cd php7***
# ./configure --prefix=/usr/local/php7 --with-config-file-path=/usr/local/php7/etc --with-mcrypt=/usr/include --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-freetype-dir --enable-opcache

# make
# make install

为不与5冲突,文件夹都用php7,安装过程中报错的安装响应的依赖。

对接nginx

nginx本身不能处理php脚本,需要发给php解释器处理。nginx一般是把请求发fastcgi管理进程处理,fascgi管理进程选择cgi子进程处理结果并返回被nginx。

# cp php.ini-production /usr/local/php7/etc/php.ini
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php7-fpm
# chmod +x /etc/init.d/php7-fpm
# cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.conf
# cp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf

启动php-fpm

# service php7-fpm start

中途如遇到日志文件路径不存在就手动创建并给予写的权限。

# service php7-fpm start
Starting php-fpm [07-Apr-2016 11:16:11] ERROR: [pool www] cannot get gid for group 'nobody'
[07-Apr-2016 11:16:11] ERROR: FPM initialization failed
 failed

遇到这个错误时,要添加个nobody组groupadd nobody

Installieren Sie php7

Laden Sie den Quellcode unter http://php.net/downloads.php herunter und entpacken Sie ihn.

location ~ \.php$ {
            fastcgi_pass   127.0.0.1:9000;
            fastcgi_index  index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include        fastcgi_params;
        }
Um keinen Konflikt mit 5 zu verursachen, verwenden alle Ordner PHP7 und die Installationsantwortabhängigkeiten, die Fehler während des Installationsprozesses verursachen.
🎜🎜Herstellen einer Verbindung zu Nginx🎜🎜🎜Nginx selbst kann keine PHP-Skripte verarbeiten und muss zur Verarbeitung an den PHP-Interpreter gesendet werden. Nginx sendet die Anforderung im Allgemeinen zur Verarbeitung an den Fastcgi-Verwaltungsprozess. Der Fascgi-Verwaltungsprozess wählt das Verarbeitungsergebnis des CGI-Unterprozesses aus und gibt es an Nginx zurück. 🎜rrreee🎜🎜Starten Sie php-fpm🎜🎜rrreee🎜Wenn Sie auf einen Protokolldateipfad stoßen, der nicht existiert, erstellen Sie ihn manuell und erteilen Sie Schreibberechtigung. 🎜rrreee🎜Wenn dieser Fehler auftritt, fügen Sie eine Niemandsgruppe groupadd someone hinzu und starten Sie dann neu. 🎜🎜🎜nginx-Konfiguration🎜🎜🎜Wenn auf die PHP-Datei zugegriffen wird, wird sie zu einer Download-Datei, da ng nicht für die Antwortverarbeitung konfiguriert ist. 🎜rrreee🎜

Das obige ist der detaillierte Inhalt vonBringen Sie Ihnen bei, PHP7 zu installieren und mit PHP5 zu koexistieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen