php-7.0.18版本(編譯安裝)-自定義安裝路徑

php-7.0.18版本(編譯安裝)-自定義安裝路徑

安裝路徑:/application/php-7.0.18

1.前期準備

安裝編譯需要的gcc和gcc-c++

yum install -y gcc gcc-c++


php依賴

libxml2-developenssl-develcurl-devellibjpeg-devellibpng-develfreetype-developenldap-devellibmcrypt-devel

yum -y install libxml2-devel openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel openldap-devel libmcrypt-devel


下載php源碼包並解壓

cd /tools
wget http://cn2.php.net/distributions/php-7.0.18.tar.gz
tar -zxf php-7.0.18.tar.gz


 

2.php編譯安裝

生成Makefile文件

cd php-7.0.18
./configure --prefix=/application/php-7.0.18 --with-mysqli --enable-mbstring --enable-fpm

需要其他功能自行添加


編譯源代碼並安裝

make && make install


 

3.後期結尾

給php-7.0.18創建軟鏈接去掉末尾的版本號

ln -s /application/php-7.0.18/ /application/php


添加環境變量

創建php命令軟鏈接到環境變量

ln -s /application/php/sbin/* /usr/local/sbin/
ln -s /application/php/bin/* /usr/local/bin/


配置php

拷貝配置文件

#引擎配置文件:php.ini
cd /application/php
cp /tools/php-7.0.18/php.ini-development /application/php/etc/php.ini
 
#服務配置文件:php-fpm.conf
cd /application/php/etc/
cp php-fpm.conf.default php-fpm.conf
 
cd /application/php/etc/php-fpm.d/
cp www.conf.default www.conf


修改服務配置文件

以nginx身份運行php
sed -i 's#nobody#nginx#g' www.conf
開啓慢查詢日誌
sed -i 's#;slowlog#slowlog#g' www.conf
開啓郵件設置
sed -i 's#;php_admin_value\[sendmail_path\]#php_admin_value\[sendmail_path\]#g' www.conf
修改收件人
sed -i 's#[email protected]#244819336@qq#g' www.conf
 
開啓pid文件
sed -i 's#;pid#pid#g' /application/php/etc/php-fpm.conf
開啓錯誤日誌
sed -i 's#;error_log#error_log#g' /application/php/etc/php-fpm.conf
修改錯誤級別
sed -i 's#;log_level = notice#log_level = error#g' /application/php/etc/php-fpm.conf
修改文件描述符數量
sed -i 's#;rlimit_files = 1024#rlimit_files = 32768#g' /application/php/etc/php-fpm.conf
修改爲異步模型
sed -i 's#;events#events#g' /application/php/etc/php-fpm.conf


5.常用命令

啓動php-fpm

php-fpm
-c使用指定的引擎配置文件運行,而非默認
php-fpm -c /application/php/etc/php.ini


停止php-fpm

kill -SIGQUIT $(cat /application/php/var/run/php-fpm.pid)  #平滑終止
kill -SIGINT $(cat /application/php/var/run/php-fpm.pid)  #立刻終止


重啓php-fpm

kill -SIGUSR2 $(cat /application/php/var/run/php-fpm.pid)  #平滑重啓


信號解釋:

SIGINT, SIGTERM 立刻終止

SIGQUIT 平滑終止

SIGUSR1 重新打開日誌文件

SIGUSR2 平滑重載所有worker進程並重新載入配置和二進制模塊


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章