Comment compiler et installer php-fpm dans centos : installez d'abord le logiciel dépendant via "yum install wget vim" ; puis installez les dépendances php puis copiez "php.ini-production" dans le répertoire du fichier de configuration spécifié lors de la compilation. compilation ; Vérifiez enfin la version de PHP.
Recommandé : "Tutoriel vidéo PHP"
Compilez et installez PHP5.4.45 sous CentOS7 et compilez php -fpm
Environnement système
uname -a Linux localhost.localdomain 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux cat /etc/redhat-release CentOS Linux release 7.3.1611 (Core) date Fri Feb 2 22:12:58 CST 2018
Fichiers requis
Code source
PHP : http://sg2.php.net/distributions / php-5.4.45.tar.gz
Environnement de compilation
gcc
Dépendances : cpp, glibc-devel, glibc-headers, kernel-headers, libmpc, mpfr
Mise à niveau du compagnon : glibc, glibc-common, libgcc, libgomp
gcc-c++
Dépendance : libstdc++-devel
Mise à niveau du compagnon : libstdc++
yum install gcc gcc-c++
Logiciel dépendant
yum install wget vim
wget est utilisé pour le téléchargement, vim est pratique pour éditer des fichiers
Compiler et installer les fichiers d'en-tête qui nécessitent fonctions correspondantes, fichiers d'en-tête Il existe deux façons de l'obtenir. L'une consiste à installer le package de développement correspondant via yum, qui contient les fichiers requis pendant le processus de compilation, l'autre consiste à télécharger le package de code source requis, à le décompresser et à le supprimer. puis spécifiez la source dans configure. L'emplacement du fichier est suffisant.
Démarrer l'installation
Installer les dépendances php
Utilisez yum pour installer ici Bien sûr, vous pouvez également choisir de le faire. utilisez le paquet source. Lors de l'utilisation du code source, il est préférable de choisir la version correspondant à yum, sinon des problèmes de compatibilité peuvent survenir.
Emplacement de téléchargement du code source : http://vault.centos.org/centos/7/os/Source/SPackages/
yum install libxml2-devel #2.9.1 yum install openssl openssl-devel #1.0.2k yum install bzip2 bzip2-devel #1.0.6 yum install curl curl-devel #7.29.0 yum install libjpeg libjpeg-devel #libjpeg-turbo-1.2.90 yum install libpng libpng-devel #1.5.13 yum install libxslt libxslt-devel #1.1.28 yum install freetype freetype-devel #2.4.11 yum install gmp gmp-devel #6.0.0 yum install icu libicu-devel #50.1.2 yum install -y epel-release && yum install -y libmcrypt libmcrypt-devel #2.5.8该包CentOS默认源中没有,所以使用epel的源 yum install unixODBC unixODBC-devel #2.3.1
Ce qui suit dépendra de l'installation. Si vous n'êtes pas sûr. , vous pouvez le faire manuellement. Installez une fois
gettext #0.18.2.1 zlib #1.2.7 pcre #8.32 libpng #1.5.13
Si vous utilisez la méthode du code source, pour garantir l'intégrité fonctionnelle, vous devez installer les packages suivants :
yum install libxml2 openssl bzip2 curl libjpeg freetype gmp icu libicu libmcrypt unixODBC gettext zlib pcre libpng
Installer php
php:
wget http://sg2.php.net/distributions/php-5.4.45.tar.gz tar zxvf php-5.4.45.tar.gz cd php-5.4.45 ./configure \ --prefix=/opt/web_engine/php \ --with-config-file-path=/opt/web_engine/php/etc \ --with-gettext \ --with-gmp \ --with-mysql \ --with-openssl \ --with-pdo-mysql \ --with-bz2 \ --with-curl \ --with-mcrypt \ --with-mhash \ --with-freetype-dir \ --with-unixODBC=/usr/ \ --with-pdo-odbc=unixODBC,/usr/ \ --with-libxml-dir \ --with-zlib \ --with-pcre-dir \ --with-gd \ --with-jpeg-dir \ --with-png-dir \ --with-xmlrpc \ --with-libxml-dir \ --with-xsl \ --enable-soap \ --enable-sysvmsg \ --enable-wddx \ --enable-zip \ --enable-exif \ --enable-intl \ --enable-bcmath \ --enable-calendar \ --enable-mbstring \ --enable-shmop \ --enable-fpm \ --enable-sockets make && make install Installing PHP CLI binary: /opt/web_engine/php/bin/ Installing PHP CLI man page: /opt/web_engine/php/php/man/man1/ Installing PHP FPM binary: /opt/web_engine/php/sbin/ Installing PHP FPM config: /opt/web_engine/php/etc/ Installing PHP FPM man page: /opt/web_engine/php/php/man/man8/ Installing PHP FPM status page: /opt/web_engine/php/php/fpm/ Installing PHP CGI binary: /opt/web_engine/php/bin/ Installing PHP CGI man page: /opt/web_engine/php/php/man/man1/ Installing build environment: /opt/web_engine/php/lib/php/build/ Installing header files: /opt/web_engine/php/include/php/ Installing helper programs: /opt/web_engine/php/bin/ program: phpize program: php-config Installing man pages: /opt/web_engine/php/php/man/man1/ page: phpize.1 page: php-config.1 Installing PEAR environment: /opt/web_engine/php/lib/php/ [PEAR] Archive_Tar - installed: 1.3.12 [PEAR] Console_Getopt - installed: 1.3.1 [PEAR] Structures_Graph- installed: 1.0.4 [PEAR] XML_Util - installed: 1.2.3 [PEAR] PEAR - installed: 1.9.5 Wrote PEAR system config file at: /opt/web_engine/php/etc/pear.conf You may want to add: /opt/web_engine/php/lib/php to your php.ini include_path /root/php-5.4.45/build/shtool install -c ext/phar/phar.phar /opt/web_engine/php/bin ln -s -f /opt/web_engine/php/bin/phar.phar /opt/web_engine/php/bin/phar Installing PDO headers: /opt/web_engine/php/include/php/ext/pdo/
Travail de suivi
Copier php.ini-production dans le répertoire source vers le répertoire du fichier de configuration spécifié lors de la compilation
cp /root/php-5.4.45/php.ini-production /opt/web_engine/php/etc cd /opt/web_engine/php/etc && cp php.ini-production php.ini cd /opt/web_engine/php/etc && cp php-fpm.conf.default php-fpm.conf
De plus, s'il y a est une extension php définie, installez l'extension
Vérifiez la version PHP
/opt/web_engine/php/bin/php -v PHP 5.4.45 (cli) (built: Feb 2 2018 15:44:07) Copyright (c) 1997-2014 The PHP Group Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
Affichez les détails
/opt/web_engine/php/bin/php -i
...
configuration systemd
vim /usr/lib/systemd/system/php-fpm.service [Unit] Description=The PHP FastCGI Process Manager After=syslog.target network.target [Service] Type=simple PIDFile=/opt/web_engine/php/var/run/php-fpm.pid ExecStart=/opt/web_engine/php/sbin/php-fpm --nodaemonize --fpm-config /opt/web_engine/php/etc/php-fpm.conf ExecReload=/bin/kill -USR2 $MAINPIDe [Install] WantedBy=multi-user.target
Rotation des journaux
vim /etc/logrotate.d/php-fpm /var/log/php-fpm/*.log { su root root daily missingok rotate 52 compress delaycompress notifempty olddir /var/log/php-fpm/archive #create 640 nginx adm sharedscripts postrotate /bin/kill -SIGUSR1 `cat /opt/web_engine/php/var/run/php-fpm.pid 2>/dev/null` 2>/dev/null || true endscript }
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!