更新軟件源[1]
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
wget http://rpms.remirepo.net/enterprise/remi-release-6.rpm
rpm -Uvh remi-release-6.rpm epel-release-latest-6.noarch.rpm
安裝php7[2][3]
yum install php70-php php70-php-pear php70-php-bcmath php70-php-pecl-jsond-devel php70-php-mysqlnd php70-php-gd php70-php-common php70-php-fpm php70-php-intl php70-php-cli php70-php php70-php-xml php70-php-opcache php70-php-pecl-apcu php70-php-pecl-jsond php70-php-pdo php70-php-gmp php70-php-process php70-php-pecl-imagick php70-php-devel php70-php-mbstring php70-php-mcrypt
查看php70和php70-php-fpm的安裝路徑[4]
rpm -qa php70
# php70-1.0-5.el6.remi.x86_64
rpm -ql php70-1.0-5.el6.remi.x86_64
(contains no files)
#######
rpm -qa php70-php-fpm
# php70-php-fpm-7.0.8-1.el6.remi.x86_64
rpm -ql php70-php-fpm-7.0.8-1.el6.remi.x86_64
# /etc/logrotate.d/php70-php-fpm
# /etc/opt/remi/php70/php-fpm.conf # php-fpm的配置文件
# /etc/opt/remi/php70/php-fpm.d
# /etc/opt/remi/php70/php-fpm.d/www.conf # www的配置文件
# /etc/opt/remi/php70/sysconfig/php-fpm
# /etc/rc.d/init.d/php70-php-fpm
# /opt/remi/php70/root/usr/sbin/php-fpm # 二進制的位置
# /opt/remi/php70/root/usr/share/doc/php70-php-fpm-7.0.8
# /opt/remi/php70/root/usr/share/doc/php70-php-fpm-7.0.8/fpm_LICENSE
# /opt/remi/php70/root/usr/share/doc/php70-php-fpm-7.0.8/php-fpm.conf.default
# /opt/remi/php70/root/usr/share/doc/php70-php-fpm-7.0.8/www.conf.default
# /opt/remi/php70/root/usr/share/fpm
# /opt/remi/php70/root/usr/share/fpm/status.html
# /opt/remi/php70/root/usr/share/man/man8/php-fpm.8.gz
# /var/opt/remi/php70/lib/php/opcache
# /var/opt/remi/php70/lib/php/session
# /var/opt/remi/php70/lib/php/wsdlcache
# /var/opt/remi/php70/log/php-fpm
# /var/opt/remi/php70/run/php-fpm
可以看到, rpm -ql php70-php-fpm-7.0.8-1.el6.remi.x86_64
並沒有列出php70
的文件詳細信息,根據[5]中的解釋, yum
默認把軟件包安裝在以下位置
- 二進制: /usr/bin
- 類庫: /usr/lib
- 頭文件: /usr/include 所以,我們可以在
/usr/bin
中找到php70
爲php
和php-fpm
製作符號鏈接
cp /usr/bin/php{,.bak}
ln -s /usr/bin/php70 /usr/bin/php
cp /usr/sbin/php-fpm{,.bak}
ln -s /opt/remi/php70/root/usr/sbin/php-fpm /usr/sbin/php-fpm
檢查並啓動php-fpm
php -v
# PHP 7.0.8 (cli) (built: Jun 22 2016 11:05:30) ( NTS )
# Copyright (c) 1997-2016 The PHP Group
# Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
# with Zend OPcache v7.0.8, Copyright (c) 1999-2016, by Zend Technologies
php-fpm -v
# PHP 7.0.8 (fpm-fcgi) (built: Jun 22 2016 11:06:37)
# Copyright (c) 1997-2016 The PHP Group
# Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
# with Zend OPcache v7.0.8, Copyright (c) 1999-2016, by Zend Technologies
php -i|less
# Configuration File (php.ini) Path => /etc/opt/remi/php70
# Loaded Configuration File => /etc/opt/remi/php70/php.ini# 配置文件php.ini的位置
service php-fpm restart # 啓動php-fpm
ps aux|grep php-fpm
# 或者
lsof -P -i:9000 # php-fpm默認監聽9000端口, 該配置可以在`php-fpm`特定於`www`的配置文件(`/etc/opt/remi/php70/php-fpm.d/www.conf`)中的`listen`參數修改
(可選)修改配置文件
從上面的步驟中,我們知道了: 1. php
的配置文件(php.ini
)在 /etc/opt/remi/php70/php.ini
.
我們可以修改post_max_size
, max_execution_time
, max_input_time
, date.timezone
等.
其中date.timezone
根據[6]的描述,可以設置爲Asia/Shanghai
2. php-fpm
特定於www
的配置文件在/etc/opt/remi/php70/php-fpm.d/www.conf
.我們可以修改監聽端口listen
,
運行的用戶名user
和用戶組group
等.
3. 以上任意2個文件修改完成後, 都只需要重啓php-fpm
即可: service
php-fpm restart