PHP7和HHVM比較
PHP7的在真實場景的性能確實已經和HHVM相當, 在一些場景甚至超過了HHVM。HHVM的運維復雜, 是多線程模型, 這就代表着如果一個線程導致crash了, 那么整個服務就掛了, 並且它不會自動重啟。另外它采用JIT, 那么意味着, 重啟以后要預熱, 沒有預熱的情況下, 性能較為糟糕。並且多線程模型調試困難, 這對於追求穩定來說的Web服務來說, 是非常不適合的。
Nginx以及PHP7.0之前的版本可以參考此文:Linux環境Nginx安裝與調試以及PHP安裝
PHP7.0正式版已經在2015年11月份左右發布,目前是PHP7.0.2版本,本人最早是從2015年8月php7的第一個測試版跟起,現在正式版發布。
linux版本:64位CentOS 6.6
Nginx版本:nginx1.8.0
php版本:php-7.0.2
下載
http://php.net/get/php-7.1.8.tar.gz/from/a/mirror

# tar zxvf php-7.1.8.tar.gz # cd php-7.1.8
首先查看安裝幫助
# ./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
可能遇到關於--with-xsl模塊的報錯,刪掉--with-xsl \重新執行一遍即可
如果配置錯誤,需要安裝需要的模塊,直接yum一並安裝依賴庫
# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel MySQL pcre-devel

# cp php.ini-development /usr/local/php/lib/php.ini # cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf # cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf # cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm
需要注意的是php7中www.conf這個配置文件配置phpfpm的端口號等信息,如果你修改默認的9000端口號需在這里改,再改nginx的配置
# /etc/init.d/php-fpm
