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

Comment mettre à niveau PHP5 vers PHP7 sous Centos

coldplay.xixi
Libérer: 2023-02-17 19:08:01
avant
2254 Les gens l'ont consulté

Comment mettre à niveau PHP5 vers PHP7 sous Centos

Recommandé (gratuit) : PHP7

1. Téléchargez d'abord le package d'installation de PHP7 et utilisez wget http:/. / am1.php.net/distributions/php-7.2.0.tar.bz2, ou téléchargez-le directement, puis FTP sur le serveur Linux
2 Décompressez le package compressé, tar –xjf php-7.0.2. tar.bz2
3. Entrez dans le dossier cd php-7.0.2 et installez les outils de dépendance nécessaires

yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
Copier après la connexion

Le but principal ici est de mettre à niveau, qui est généralement installé en php5, donc ceci. l'étape peut être omise
4. Installez plusieurs dépendances (doivent être installées, sinon le fichier libphp7.so utilisé par Apache ne pourra pas être généré ultérieurement)

yum -y install perl
yum –y install perl-develyum -y install httpd-develfind /usr  -name apxs 取得所用路径,后面编译时用到。
Copier après la connexion

5. Préparez la compilation

./configure --prefix=/usr/local/php7 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
Copier après la connexion

**Remarque : –enable-gd-native-ttf n'a pas besoin d'être installé Il est utilisé pour le traitement graphique Si nécessaire, il peut être installé sous une forme étendue ultérieurement<🎜. > –with-apxs2= Remplacez le chemin derrière /usr/bin/apxs par le chemin obtenu à l'étape 4
–prefix=/usr/local/php7 Installez-le séparément dans le dossier php7 pour éviter tout conflit avec php5**
6. Compiler
make
Cette étape est sujette à de nombreux problèmes,
si vous rencontrez par exemple : undefine. . . .
/ext/cli./php …
Openssl
et autres erreurs, et assurez-vous que les modules concernés sont installés, effacez généralement la compilation précédente, supprimez les fichiers concernés et recompilez

make clean
rm –rf /usr/local/php7
Copier après la connexion

Généralement, le problème peut être résolu.

Pour d'autres erreurs, veuillez vous référer à ce blog :
http://www.cnblogs.com/sweetXiaoma/p/5855732.html
http://www.linuxidc.com/Linux /2017- 08/146220.htm
La clé est de le résoudre vous-même Comme il y a trop de distributions Linux et que la configuration de l'environnement de chaque serveur est différente, vous rencontrerez de nombreux problèmes étranges.
7. Installer
Make install
8. Préparer le fichier de configuration

cp php.ini-developement /etc/php.ini   //根据实际情况,可以使用production或者development默认配置cp /usr/local/php7/etc/php-fpm.conf.default /usr/local/php7/etc/php-fpm.confcp /usr/local/php7/etc/php-fpm.d/www.conf.default /usr/local/php7/etc/php-fpm.d/www.conf
Copier après la connexion

9. Besoin de modifier le fichier de configuration Apache

Vi /etc/httpd/conf/httpd.conf Recherchez LoadModule php7_module modules/libphp7.so, s'il n'est pas ajouté manuellement,
Commentez LoadModule php5_module modules/libphp5.so
cp /etc/httpd/conf.d/php.conf /etc/httpd/conf.d /php.conf_5
Vi /etc/httpd/conf.d/php.conf
Remplacez par ce qui suit : (Commentez ceux liés à php5 et remplacez les modules liés à php7)

<IfModule prefork.c>
  LoadModule php7_module modules/libphp7.so</IfModule><Files ".user.ini">
    <IfModule mod_authz_core.c>
        Require all denied    </IfModule>
    <IfModule !mod_authz_core.c>
        Order allow,deny        Deny from all
        Satisfy All</IfModule></Files>DirectoryIndex index.php# mod_php options<IfModule  mod_php7.c>
    <FilesMatch \.php$>
        SetHandler application/x-httpd-php</FilesMatch>
    php_value session.save_handler "files"
    php_value session.save_path    "/var/lib/php/session"
    php_value soap.wsdl_cache_dir  "/var/lib/php/wsdlcache"</IfModule>
Copier après la connexion
10. Redémarrez le serveur Apache

service httpd restart

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:csdn.net
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