Maison >développement back-end >PHP7 >Installez php7 et coexistez avec php5
Démarrage
J'ai déjà construit un environnement de lampe sur le serveur. Je souhaite passer au nginx plus puissant comme logiciel serveur et je souhaite mettre à niveau php5 vers <.>php7.
Pas besoin d'entrer dans les détails lors de l'installation de nginx :, modifiez le port apache avant de démarrer ng. sudo apt-get install nginx
Installez php7
Téléchargez le code source depuis et décompressez-le. 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 installAfin 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 avec 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.# 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
Démarrez php-fpm
# service php7-fpm startSi vous rencontrez un chemin de fichier journal qui n'existe pas, créez-le manuellement et accordez l'autorisation d'écriture.
# 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 failedLorsque vous rencontrez cette erreur, vous devez ajouter un
groupenobody
et redémarrer. groupadd nobody
Configuration nginx
C'est à ce moment-là que l'accès au fichier php devient un fichier téléchargé car ng n'est pas configuré pour le traitement des réponses.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; }Merci d'utiliser PHP.
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!