PHP 7.2.10 編譯安裝
阿新 • • 發佈:2018-10-09
ech ssi bug exif freetype ati rpath sco nts 準備環境
1.CentOS 系統
[root@test3 ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
2.防火墻
[root@test3 ~]# systemctl stop firewalld [root@test3 ~]# systemctl disable firewalld [root@test3 ~]# cat /etc/sysconfig/selinux SELINUX=disabled [root@test3 ~]# setenforce 0 [root@test3 ~]# getenforce 0 Permissive
3.YUM,EPEl源
本地YUM源可以,或者選擇其他外部源
[root@test3 ~]# yum -y install epel-release
4.php依賴包
[root@test3 ~]# yum -y install gcc gcc-c++ libmcrypt-devel mcrypt mhash gd-devel ncurses-devel libxml2-devel bzip2-devel libcurl-devel curl-devel libjpeg-devel libpng-devel freetype-devel net-snmp-devel openssl-deve python-devel zlib-devel freetype libxslt* bison autoconf re2c
5.php安裝包
[root@test3 ~]# wget http://cn2.php.net/distributions/php-7.2.10.tar.gz [root@test3 ~]# tar xvf php-7.2.10.tar.gz [root@test3 ~]# cd php-7.2.10/ [root@test3 php-7.2.10]# ./configure --prefix=/usr/local/php --exec-prefix=/usr/local/php --bindir=/usr/local/php/bin --sbindir=/usr/local/php/sbin --includedir=/usr/local/php/include --libdir=/usr/local/php/lib/php --mandir=/usr/local/php/php/man --with-config-file-path=/usr/local/php/etc --with-mysql-sock=/var/run/mysql/mysql.sock --with-mhash --with-openssl --with-mysqli=shared,mysqlnd --with-pdo-mysql=shared,mysqlnd --with-gd --with-iconv --with-zlib --enable-zip --enable-inline-optimization --disable-debug --disable-rpath --enable-shared --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-mbregex --enable-mbstring --enable-ftp --enable-pcntl --enable-calendar --enable-exif --enable-sockets --with-xmlrpc --with-libxml-dir --enable-soap --without-pear --with-gettext --enable-session --with-curl --with-jpeg-dir --with-png-dir --with-freetype-dir --with-bz2 --enable-opcache --enable-fpm --with-fpm-user=nginx --with-fpm-group=nginx --without-gdbm --enable-fast-install --disable-fileinfo
[root@test3 php-7.2.10]# make
······
Build complete.
Don‘t forget to run ‘make test‘.
[root@localhost php-7.2.10]# make install
······
/root/php-7.2.10/build/shtool install -c ext/phar/phar.phar /usr/local/php/bin
ln -s -f phar.phar /usr/local/php/bin/phar
Installing PDO headers: /usr/local/php/include/php/ext/pdo/
[root@test3 php-7.2.10]# /usr/local/php/bin/php -v //版本驗證
PHP 7.2.10 (cli) (built: Oct 9 2018 09:59:01) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
6.編譯PHP的選項說明
7.PHP安裝後的配置
php.ini文件
[root@test3 php-7.2.10]# useradd nginx
[root@test3 php-7.2.10]# cp -a php.ini-production /usr/local/php/etc/php.ini
[root@test3 php-7.2.10]# cp -a php.ini-production /usr/local/php/etc/php.ini
[root@test3 php-7.2.10]# vim /usr/local/php/etc/php.ini
date.timezone = Asia/shanghai #指定時區為上海
expose_php = Off #禁止顯示PHP版本
short_open_tag = ON #支持PHP短標簽
opcache.enable=1 #PHP支持opcode緩存
opcache.enable_cli=0
zend_extension=opcache.so #在最後一行添加,開啟opcode緩存功能
8.配置php-fpm和www.conf
[root@test3 php-7.2.10]# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
[root@test3 php-7.2.10]# cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf
[root@test3 php-7.2.10]# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
[root@test3 php-7.2.10]# chmod +x /etc/rc.d/init.d/php-fpm
[root@test3 php-7.2.10]# chkconfig --add php-fpm
9.環境變量
[root@test3 php-7.2.10]# cat /etc/profile
PATH=$PATH:/usr/local/php/bin/:/usr/local/php/sbin/
[root@test3 php-7.2.10]# source /etc/profile
10.啟動 php-fpm
[root@test3 php-7.2.10]# systemctl start php-fpm
[root@test3 php-7.2.10]# ss -ant|grep 9000
LISTEN 0 128 127.0.0.1:9000 *:*
11.創建測試頁
[root@test3 php-7.2.10]# yum -y install nginx
[root@test3 ~]# vim /etc/nginx/nginx.conf
#把下面一段插入到server標簽內
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
[root@test3 ~]# vim /usr/share/nginx/html/index.php
#創建php測試網頁
<?php
phpinfo();
?>
[root@localhost ~]# systemctl start nginx
12.測試
PHP 7.2.10 編譯安裝