Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk memasang php7 dan php5 untuk wujud bersama

Bagaimana untuk memasang php7 dan php5 untuk wujud bersama

藏色散人
藏色散人ke hadapan
2021-09-09 10:19:041706semak imbas

Bermula

Saya telah membina persekitaran lamp pada pelayan sebelum ini dan ingin bertukar kepada satu dengan prestasi yang lebih kukuhnginxSebagai perisian pelayan, saya ingin menaik taraf php5 kepada php7
Tidak perlu pergi ke butiran semasa memasang nginx: sudo apt-get install nginx, ubah suai port apache sebelum memulakan ng.

Pasang php7

Muat turun kod sumber di http://php.net/downloads.php dan nyahzipnya.

# 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

Untuk tidak bercanggah dengan 5, semua folder menggunakan php7 Kebergantungan respons pemasangan apabila ralat dilaporkan semasa proses pemasangan.

Bersambung dengan nginx

nginx sendiri tidak boleh memproses skrip php dan perlu dihantar kepada penterjemah php untuk diproses. nginx secara amnya menghantar permintaan kepada proses pengurusan fastcgi untuk pemprosesan Proses pengurusan fascgi memilih hasil pemprosesan sub-proses cgi dan mengembalikannya kepada 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

Mulakan php-fpm

# service php7-fpm start

Jika anda menemui laluan fail log yang tidak wujud, buat secara manual dan berikan kebenaran menulis.

# 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

Apabila menghadapi ralat ini, tambahkan kumpulan tiada siapa groupadd nobody dan mulakan semula.

konfigurasi nginx

Ini adalah apabila mengakses fail php ia menjadi fail yang dimuat turun kerana ng tidak dikonfigurasikan untuk pemprosesan respons.

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;
        }

Pembelajaran yang disyorkan: "Tutorial PHP7"

Atas ialah kandungan terperinci Bagaimana untuk memasang php7 dan php5 untuk wujud bersama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:segmentfault.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam