0、安裝必要的依賴軟件
如果已經安裝了可能會進行升級,版本完全一致則不會進行任何操作。
yum -y install bzip2-devel curl-devel freetype-devel gcc libjpeg-devel libpng-devel libxslt-devel libxml2-devel openssl-devel pcre-devel pcre-devel zlib-devel
1、下載php
下載地址:http://php.net/get/php-7.0.11.tar.gz/from/a/mirror
下載“php-7.0.11.tar.gz”后移動到linux服務器的任意目錄下,只在編譯時指定安裝到的目錄。
2、解壓安裝包
tar -zxvf php-7.0.11.tar.gz
cd php-7.0.11
3、配置安裝變量
./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-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --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-sysvshm --enable-xml --enable-zip
“/usr/local/php”是安裝路徑,可以改成自己喜歡的安裝路徑。
4、編譯源碼
# 在解壓目錄執行編譯命令:make
cd php-7.0.11 make
編譯會花費一些時間,耐心等待即可。編譯完成的最后會提示你執行make test命令。就是對上一步 make 的檢查,
要確保 make 是沒有錯誤的,也就是這一步的 test、check要全部是 OK 的,error 為0。
5、安裝php
make install
6、配置PHP
將PHP源碼包(/usr/local/php-7.0.11)中的php.ini-development文件復制到/usr/local/php/下,更名為php.ini。
cp /usr/local/php-7.0.11/php.ini-development /usr/local/php/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
配置php.ini “cgi.fix_pathinfo=0”
啟動php-fpm服務:
/usr/local/php/sbin/php-fpm
啟動完畢之后,php-fpm服務默認使用9000端口,使用 netstat -tln | grep 9000 可以查看端口使用情況:
7、配置nginx
nginx安裝教程:http://www.cnblogs.com/xxoome/p/5866475.html
編輯nginx配置文件/usr/local/nginx/conf/nginx.conf,主要修改nginx的server {}配置塊中的內容,修改location塊,追加index.php讓nginx服務器默認支持index.php為首頁:
然后配置.php請求被傳送到后端的php-fpm模塊,默認情況下php配置塊是被注釋的,此時去掉注釋並修改為以下內容:
location ~* \.php$ { root html; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
這里面很多都是默認的,root是配置php程序放置的根目錄,主要修改的就是fastcgi_param中的/scripts為$document_root
修改完這些保存並退出,然后重啟nginx:/usr/local/nginx/sbin/nginx -s reload
接下來編輯一個測試的php程序,在nginx下的html目錄下創建test.php文件,打印一下php配置:
<?php phpinfo(); ?>
然后打開瀏覽器輸入對應的地址進行訪問,看到輸出頁面,說明nginx和php都配置成功了: