1、首先下载PHP7安装包,使用wget http://am1.PHP.net/distributions/PHP-7.2.0.tar.bz2,或者直接访问下载,然后ftp到linux服务器
推荐:《php培训》
2、解压压缩包,tar –xjf PHP-7.0.2.tar.bz2
3、进入文件夹,cd PHP-7.0.2 ,安装必要的依赖工具,
yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel curl curl-devel openssl openssl-devel
4、安装几个依赖(必须安装,否则后面无法生成apache所用的libPHP7.so文件)
yum -y install perl yum –y install perl-devel yum -y install httpd-devel find /usr -name apxs 取得所用路径,后面编译时用到。
5、准备编译工作
./configure --prefix=/usr/local/PHP7 --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-MysqLi --with-openssl --with-pcre-regex --with-pdo-MysqL --with-pdo-sqlite --with-pear --with-png-dir --with-xmlrpc --with-xsl --with-zlib --enable-fpm --enable-bcmath -enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-xml --enable-zip --enable-pcntl --with-curl --with-fpm-user=Nginx --enable-ftp --enable-session --enable-xml --with-apxs2=/usr/bin/apxs
**注意:其中的 –enable-gd-native-ttf 可以不安装,处理图形用的,如果有需求可以以后以扩展形式装
–with-apxs2=/usr/bin/apxs 后面的路径改为第4步得到的路径
–prefix=/usr/local/PHP7 单独安装在PHP7的文件夹,避免和PHP5冲突**
6、编译
make
这一步容易出现很多问题,
如果遇到譬如:undefine 。。。。
/ext/cli./PHP … Openssl
等等错误,而且确定安装了相关的模块,则一般清除之前的编译,删除相关文件后重新编译
make clean rm –rf /usr/local/PHP7
一般都可以解决问题。
7、安装
Make install
8、准备配置文件
cp PHP.ini-developement /etc/PHP.ini //根据实际情况,可以使用production或者development默认配置 cp /usr/local/PHP7/etc/PHP-fpm.conf.default /usr/local/PHP7/etc/PHP-fpm.conf cp /usr/local/PHP7/etc/PHP-fpm.d/www.conf.default /usr/local/PHP7/etc/PHP-fpm.d/www.conf
Vi /etc/httpd/conf/httpd.conf 找到LoadModule PHP7_module modules/libPHP7.so,如果没有手动加上,
将LoadModule PHP5_module modules/libPHP5.so注释掉
cp /etc/httpd/conf.d/PHP.conf /etc/httpd/conf.d/PHP.conf_5 Vi /etc/httpd/conf.d/PHP.conf
改为下面这样:(将涉及到PHP5的注释掉,改为PHP7相关模块)
<IfModule prefork.c> LoadModule PHP7_module modules/libPHP7.so </IfModule> <Files .user.ini> <IfModule mod_authz_core.c> Require all denied </IfModule> <IfModule !mod_authz_core.c> Order allow,deny Deny from all Satisfy All </IfModule> </Files> DirectoryIndex index.PHP # mod_PHP options <IfModule mod_PHP7.c> <FilesMatch \.PHP$> SetHandler application/x-httpd-PHP </FilesMatch> PHP_value session.save_handler files PHP_value session.save_path /var/lib/PHP/session PHP_value soap.wsdl_cache_dir /var/lib/PHP/wsdlcache </IfModule>
10、重启apache服务器
service httpd restart
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。