Maison > développement back-end > PHP7 > le corps du texte

Comment installer php7 et php5 pour coexister

藏色散人
Libérer: 2023-02-18 08:06:02
avant
1702 Les gens l'ont consulté

Démarrer

J'ai déjà construit un environnement lamp sur le serveur et je souhaite passer au nginx plus puissant. en tant que logiciel serveur, et vous souhaitez mettre à niveau php5 vers php7 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
Copier après la connexion

为不与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
Copier après la connexion

启动php-fpm

# service php7-fpm start
Copier après la connexion

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

# 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
Copier après la connexion

遇到这个错误时,要添加个nobody组groupadd nobodyPas besoin d'entrer dans les détails pour installer nginx : sudo apt-get install nginx, modifiez le port apache avant de démarrer ng.

Installez php7

Téléchargez le code source sur http://php.net/downloads.php et décompressez-le.

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;
        }
Copier après la connexion

Afin de ne pas entrer en conflit avec 5, les dossiers sont tous en php7 et la dépendance de la réponse d'installation a provoqué une erreur lors du processus d'installation. Connexion à nginx

nginx lui-même ne peut pas traiter les scripts php et doit être envoyé à l'interpréteur php pour traitement. nginx envoie généralement la demande au processus de gestion fastcgi pour traitement. Le processus de gestion fascgi sélectionne le résultat du traitement du sous-processus cgi et le renvoie à nginx.
rrreee🎜Démarrez php-fpm🎜rrreee🎜Si vous rencontrez un chemin de fichier journal qui n'existe pas, créez-le manuellement et accordez l'autorisation d'écriture. 🎜rrreee🎜Lorsque vous rencontrez cette erreur, ajoutez un groupe personne groupadd person puis redémarrez. 🎜🎜Configuration nginx🎜🎜C'est lors de l'accès au fichier php qu'il devient un fichier téléchargé, car ng n'est pas configuré pour le traitement des réponses. 🎜rrreee🎜Apprentissage recommandé : "🎜Tutoriel PHP7🎜"🎜🎜🎜

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal