1,安裝wget命令
yum install wget
php
2,在/usr/local/src目錄下載源碼包
wget http://cn2.php.net/distributions/php-7.2.4.tar.gz
mysql
解壓源碼包
tar zxvf php-7.2.4.tar.gz
c++
3,安裝編譯php須要的依賴包
yum install gcc autoconf gcc-c++
yum install libxml2 libxml2-devel openssl openssl-devel bzip2 bzip2-devel libcurl libcurl-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel gmp gmp-devel readline readline-devel libxslt libxslt-devel
web
yum install systemd-devel
yum install openjpeg-devel
sql
添加php-fpm用戶
建立羣組
groupadd php-fpm
建立一個用戶,不容許登錄和不創主目錄vim
useradd -s /sbin/nologin -g php-fpm -M php-fpmapi
開發環境:
--enable-phpdbg
--enable-dtrace
生產環境:
--disable-phpdbg
--disable-dtrace\curl
cd /usr/local/src/php-7.2.4
編譯:
./configure \ --prefix=/usr/local/php \ --with-config-file-path=/usr/local/php/etc \ --with-zlib-dir \ --with-freetype-dir \ --enable-mbstring \ --with-libxml-dir=/usr \ --enable-xmlreader \ --enable-xmlwriter \ --enable-soap \ --enable-calendar \ --with-curl \ --with-zlib \ --with-gd \ --with-pdo-sqlite \ --with-pdo-mysql \ --with-mysqli \ --with-mysql-sock \ --enable-mysqlnd \ --disable-rpath \ --enable-inline-optimization \ --with-bz2 \ --with-zlib \ --enable-sockets \ --enable-sysvsem \ --enable-sysvshm \ --enable-pcntl \ --enable-mbregex \ --enable-exif \ --enable-bcmath \ --with-mhash \ --enable-zip \ --with-pcre-regex \ --with-jpeg-dir=/usr \ --with-png-dir=/usr \ --with-openssl \ --enable-ftp \ --with-kerberos \ --with-gettext \ --with-xmlrpc \ --with-xsl \ --enable-fpm \ --with-fpm-user=php-fpm \ --with-fpm-group=php-fpm \ --with-fpm-systemd \ --disable-fileinfo
socket
執行編譯:
make && make install
如圖:
php-fpm
4,複製配置文件
php-ini:
源碼包裏面有配置文件:
php.ini-development 測試開發環境
php.ini-production 生產環境
複製一份到指定的目錄下(根據本身的狀況選用,本身能夠對比下這兩個文件的差別):
cp php.ini-production /usr/local/php/etc/php.ini
php-fpm複製一份新的php-fpm配置文件:
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
vim php-fpm.conf
配置錯誤日誌:
error_log = /usr/local/php/var/php-fpm.log
配置pid文件:
pid = /usr/local/php/var/run/php-fpm.pid
保存退出
cd /usr/local/php/etc/php-fpm.d
cp www.conf.default www.conf
管理php-fpm配置:
cd /usr/local/src/php-7.2.4
cp ./sapi/fpm/php-fpm.service /usr/lib/systemd/system/
配置開機啓動php-fpm:
systemctl enable php-fpm
啓動php-fpm:
systemctl start php-fpm
查看狀態:
systemctl status php-fpm
添加環境變量:
vim /etc/profile
在末尾追加:
export PATH=$PATH:'/usr/local/php/bin/'
保存退出。
source /etc/profile
測試:
php -v
看到下面這個就表示已經成功了。
若是須要區分web和cli環境,能夠將 /usr/local/php/etc/php.ini 複製一份,重命名爲php-cli.ini
cp /usr/local/php/etc/php.ini /usr/local/php/etc/php-cli.ini
須要調整配置,就在各自的配置文件中進行調整便可。