linux 源码安装php7.0 yum

时间:2021-07-09 02:06:33

PHP7和HHVM比较
PHP7的在真实场景的性能确实已经和HHVM相当, 在一些场景甚至超过了HHVM。HHVM的运维复杂, 是多线程模型, 这就代表着如果一个线程导致crash了, 那么整个服务就挂了, 并且它不会自动重启。另外它采用JIT, 那么意味着, 重启以后要预热, 没有预热的情况下, 性能较为糟糕。并且多线程模型调试困难, 这对于追求稳定来说的Web服务来说, 是非常不适合的。

下载

# wget  http://php.uberglobalmirror.com/distributions/php-7.0.18.tar.gz


解压安装

# tar zxvf php-7.0.2.tar.gz

# cd php-7.0.2

首先查看安装帮助

# ./configure   --help

# ./configure --prefix=/usr/local/php \
 --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-libxml \
 --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
 

linux 源码安装php7.0 yum

如果配置错误,需要安装需要的模块,直接yum一并安装依赖库

# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel

注意:安装php7beta3的时候有几处配置不过去,需要yum一下,现在php-7.0.2已经不用这样了。
# yum -y install curl-devel
# yum -y install libxslt-devel
 
编译安装
# make &&  make install
linux 源码安装php7.0 yum

可以到安装目录,查看生成的文件

linux 源码安装php7.0 yum

需要注意的是,虽然到此,PHP安装是完成了,但是没找到配置文件,因为配置文件 php.ini需要自己从安装包中创建

linux 源码安装php7.0 yum

创建php-fpm.conf文件

linux 源码安装php7.0 yum

创建www.conf文件

linux 源码安装php7.0 yum

如果不创建*.conf 文件,启动php-fpm时候会报错,因为它是php-fpm的配置文件

linux 源码安装php7.0 yum

Nginx与PHP的连接

在nginx.conf中添加如下文件

 location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /usr/local/nginx/html$fastcgi_script_name;
include fastcgi_params;
}

测试

启动php-fpm

linux 源码安装php7.0 yum

默认的是监听9000端口,可以在php-fpm配置中进行相应的修改,我的配置文件路径如下

/usr/local/php/etc/php-fpm.d/www.conf

启动Nginx

linux 源码安装php7.0 yum

编辑测试文件内容如下 touch 1.php

vim 1.php

<?php
phpinfo();

测试结果如下

linux 源码安装php7.0 yum