Maison  >  Article  >  Opération et maintenance  >  Comment mettre à niveau centos7 php7.0 vers php7.1

Comment mettre à niveau centos7 php7.0 vers php7.1

藏色散人
藏色散人avant
2021-06-19 16:28:132797parcourir

La colonne tutorielle suivante de centos vous présentera comment mettre à niveau centos7 php7.0 vers php7.1. J'espère qu'elle sera utile aux amis dans le besoin !

Ne me demandez pas pourquoi je veux mettre à niveau, je ne suis pas une personne d'exploitation et de maintenance. Si vous n'êtes pas un responsable de l'exploitation et de la maintenance, et que vous êtes le serveur d'une entreprise, alors vous devez quand même être prudent. Je viens de remplir la fosse pendant une journée entière, j'enregistrerai simplement cette journée pitoyable

<.> Sauvegardez le php7.0 précédent (c'est très important, très important)

Si cette étape n'est pas effectuée, mettez à jour directement, je suis sûr que 90% de votre serveur raccrochera. pour pourquoi, parce que vous La configuration précédente a disparu et la configuration php7.1 nouvellement installée est nouvelle Sans diverses extensions, comment votre serveur fonctionnera-t-il ? Bien sûr, si vous n'avez installé aucune extension, félicitations, vous n'avez pas besoin de sauvegarder

cp -P /usr/local/php /usr/local/php70
Vérifiez la configuration de php7.0

Puisque c'est le cas une mise à niveau, bien sûr

seulement. Il peut y en avoir plus mais pas moins qu'avant. Si vous oubliez le précédent configure (personne ne s'en souviendra avec certitude), consultez phpinfoconfigure

 php -i | grep configure
<.>

Comment mettre à niveau centos7 php7.0 vers php7.1Remplacez-le pour obtenir la

commande précédente

 php -i | grep configure | sed -e "s/Configure Command =>  //; s/'//g"
configure

Comment mettre à niveau centos7 php7.0 vers php7.1Téléchargez le code source de php7.1

cd /usr/local/src
wget -c http://cn2.php.net/get/php-7.1.0.tar.gz/from/this/mirror -O php-7.1.0.tar.gz

tar -zxvf php-7.1.0.tar.gz
cd php-7.1.0/

Commencez l'installation de 7.1

cd php-7.1.0

./configure  --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mhash --with-openssl --with-mcrypt --enable-mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-gd-native-ttf --enable-pcntl --enable-sockets --with-xmlrpc --enable-soap --without-pear --with-gettext --enable-session --with-curl --enable-opcache --enable-fpm

make 

make install

Cela termine essentiellement l'installation Simple, c'est très simple, mais des pièges arrivent

Démarrer. combler les fosses

Comme il s'agit d'une mise à jour, Bien entendu, la configuration sera la même qu'avant

cp /usr/local/php70/etc/php.ini /usr/local/php/etc/php.ini
cp /usr/local/php70/etc/php-fpm.conf /usr/local/php/etc/php-fpm.conf
cp /usr/local/php70/etc/php-fpm.d/www.conf /usr/local/php/etc/php-fpm.d/www.conf

L'écueil des extensions, toutes les extensions installées auparavant devront être réinstallées maintenant, et

, c'est très important, sinon vous le ferez toujours. Il y a des problèmes similaires à ceux suivants lors de l'exécution de 不能在以前的扩展包文件夹下安装,必须是新的扩展包文件夹

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/memcached.so' - /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/memcached.so: cannot open shared object file: No such file or directory in Unknown on line 0
php -v Si vous oubliez d'installer des extensions, prenez simplement un regardez ce qu'il y a dans le répertoire d'extension :
[root]$ /usr/local/php/bin/php-config --extension-dir
 /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303
[root]$  ls /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303

Parmi eux,

est intégré, et les autres sont tous nouvellement ajoutés. Je ne vous dirai pas comment installer d'autres extensions. Si vous avez installé beaucoup d'autres extensions, félicitations, vous pouvez vous entraîner à nouveau

opcache.a opcache.soRedémarrer php-fpm

 systemctl restart php-fpm

Afficher l'état

systemctl status php-fpm -l

Les pièges restants, les pièges du code

C'est un peu gênant Si votre code n'est pas très rigoureux, on estime que

est déjà très gros maintenant, et le reste Il. il vous faudra beaucoup de temps pour corriger à nouveau votre propre code. Pourquoi est-ce que j'en parle ? Principalement parce que je change ce code de compatibilité toute la journée (le code est si mal écrit). Par exemple, une seule instance d’une classe créera un énorme gouffre. . . . . Bonne chance à vous

error.log

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!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer