Heim  >  Artikel  >  Backend-Entwicklung  >  So installieren Sie PHP7 und PHP5, damit sie koexistieren

So installieren Sie PHP7 und PHP5, damit sie koexistieren

藏色散人
藏色散人nach vorne
2021-09-09 10:19:041695Durchsuche

Starten

Ich habe zuvor eine lamp-Umgebung auf dem Server erstellt und möchte auf das leistungsstärkere nginx umsteigen B. die Serversoftware, und Sie möchten PHP5 auf PHP7 aktualisieren. 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 nobodySie müssen nicht auf Details eingehen, um Nginx zu installieren: sudo apt-get install nginx, ändern Sie den Apache-Port, bevor Sie ng starten.

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, befinden sich alle Ordner in PHP7 und die Abhängigkeit von der Installationsantwort hat während des Installationsvorgangs einen Fehler verursacht. 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 heruntergeladenen Datei, da ng nicht für die Antwortverarbeitung konfiguriert ist. 🎜rrreee🎜Empfohlenes Lernen: „🎜PHP7-Tutorial🎜“🎜🎜🎜

Das obige ist der detaillierte Inhalt vonSo installieren Sie PHP7 und PHP5, damit sie 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