標籤:inline str span freetype nbsp href ttext develop zip
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
建議安裝之前先看看安裝協助檔案INSTALL
解壓安裝
# 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
注意:安裝php7beta3的時候有幾處配置不過去,需要yum一下,現在php-7.1.8已經不用這樣了。# yum -y install curl-devel# yum -y install libxslt-devel 編譯安裝# make && make install
設定檔
# 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 查看phpinfo() 摘自:http://blog.csdn.net/21aspnet/article/details/47708763 http://blog.csdn.net/unix21/article/details/8544922
Linux環境PHP5.6升級7.1.8