Linux下编译安装php7.2
准备工作
所有操作需要在root用户下
安装路径: /usr/local/php
安装PHP
首先要安装如下依赖包
$ yum install -y gcc gcc-c++ make zlib zlib-devel pcre pcre-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers
下载PHP7.2安装包 下载地址: https://www.php.net/downloads.php
解压php-7.2.0.tar.gz 然后进入目录,编译安装,命令如下
$ tar -zxvf php-7.2.0.tar.gz
$ cd php-7.2.0
$ ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-mbstring --enable-ftp --with-gd --with-jpeg-dir=/usr --with-png-dir=/usr --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-pear --enable-sockets --with-freetype-dir=/usr --with-zlib --with-libxml-dir=/usr --with-xmlrpc --enable-zip --enable-fpm --enable-xml --enable-sockets --with-gd --with-zlib --with-iconv --enable-zip --with-freetype-dir=/usr/lib/ --enable-soap --enable-pcntl --enable-cli --with-curl
注: 编译参数可以自己去官网查看,根据自己的需要设置,这里简单列举几个主要参数
--prefix--/usr/local/php 设置PHP的安装路径 (要区别PHP的源码包php-7.2.0 和 PHP的安装包 PHP)
--with-config-file-path 设置 php.ini 的存放路径。 默认为 prefix/lib
编译完成后,执行安装命令:
make && make install
安装完成后在安装目录 /usr/local 下会出现一个PHP的安装目录 PHP
在之前编译的源码包中,找到 php.ini-production 复制到 /usr/local/php下,并改名为php.ini
$ cp php.ini-production /usr/local/php/php.ini
复制启动脚本:
$ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ chmod +x /etc/init.d/php-fpm
复制启动脚本:
$ cp ./sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
$ chmod +x /etc/init.d/php-fpm
修改php-fpm配置文件:
$ cd /usr/local/php/etc
$ mv php-fpm.conf.default php-fpm.conf
$ vim php-fpm.conf
1
|
① 去掉 pid = run/php-fpm.pid 前面的分号 |
$ cd php-fpm.d
$ cp www.conf.default www.conf
$ vim www.conf
1
|
② 修改user和group的用户为当前用户(也可以不改,默认会添加nobody这个用户和用户组) |
启动PHP
$ /etc/init.d/php-fpm start #php-fpm启动命令
$ /etc/init.d/php-fpm stop #php-fpm停止命令
$ /etc/init.d/php-fpm restart #php-fpm重启命令
$ ps -ef | grep php 或者 ps -A | grep -i php #查看是否已经成功启动PHP