下載nginx-1.10.3.tar.gz,php-7.0.9.tar.gz。也能夠去nginx官網,php官網下載想要的版本。我選擇nginx1.10.3穩定版和php7.0.9最新版。php源碼包下載速度可能會很慢,建議使用迅雷等工具,下載完成後經過stfp工具把源碼包上傳到服務器上,爲方便測試,我直接放置在root家目錄下:php
使用源碼安裝要確保服務器安裝好gcc(編輯工具)和make(安裝工具),若沒安裝能夠執行命令安裝:html
# yum install gcc # yum install make
安裝ngix以前還須要安裝好如下依賴工具:mysql
# yum -y install pcre-devel openssl openssl-devel
解壓php、nginx源碼包:nginx
# tar xvf php-7.0.9.tar.gz # tar xvf nginx-1.10.3.tar.gz
安裝nginx,進入解壓目錄:sql
編輯configure文件:瀏覽器
# ./configure --prefix=/usr/local/nginx
編譯結束沒有錯誤之後執行安裝:bash
# make && make install
由於編譯安裝,並沒使用yum,因此無法直接使用nginx命令了。服務器
PSphp7
啓動:/usr/local/nginx/sbin/nginx
中止/從新加載:/usr/local/nginx/sbin/nginx -s stop(quit、reload)
驗證配置文件是否合法:/usr/local/nginx/sbin/nginx -t
命令幫助:/usr/local/nginx/sbin/nginx -hcurl
添加全局命令,把nginx絕對路徑的執行命令經過軟連接添加到系統bin目錄下:
# ln -s /usr/local/nginx/sbin/nginx /bin/
測試全局命令,任意位置執行nginx命令:
查看是否啓動:
# ps -aux | grep nginx
瀏覽器測試,瀏覽器輸入服務器公網ip:
安裝php7.0.9:
一併安裝php7所需依賴庫不然配置時會報錯:
# yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype freetype-devel gd jpegsrc libmcrypt libpng libpng-devel libjpeg libjpeg-devel libxml2 libxml2-devel zlib curl curl-devel openssl openssl-devel libxml2 libxml2-devel readline-devel libedit-devel pcre-devel
命令行執行命令,進行安裝配置
# ./configure --prefix=/usr/local/php --enable-bcmath --enable-mbstring --enable-mysqlnd --enable-opcache --enable-pcntl --enable-xml --enable-zip --with-libedit --with-openssl --with-zlib --with-mysqli --with-pdo-mysql --with-pear --enable-fpm --enable-bcmath --enable-mbstring --enable-mysqlnd --enable-opcache --enable-pcntl --enable-xml --enable-zip --with-curl --with-mysqli --with-pdo-mysql
看到Thank you for use php表示配置成功,能夠執行make來進行安裝了:
安裝php7:
# make && make install
安裝完畢:
PHP安裝是完成了,可是沒找到配置文件,由於配置文件 php.ini須要本身從安裝包中拷貝過來
該把源碼包中的php.ini拷貝到哪裏呢?執行(# php -ini), Configuration File Path就是php.ini須要存放的位置:
# cp ~/php-7.0.9/php.ini-production /usr/local/php/lib/php.ini
對應位置複製粘貼建立php-fpm.conf、www.conf文件
*.conf 是php-fpm的配置文件,沒有它啓動php-fpm時候會報錯
開啓php-fpm
# /usr/local/php/sbin/php-fpm &
查看佔端口應用,殺掉應用
# netstat -ntlp | grep 9000 # killall php-fpm
讓nginx支持php擴展:(編輯nginx.conf)
打開這幾行代碼註釋,把紅線位置的/scripts改爲項目源碼存放的位置,根據實際狀況,保存退出。
重啓nginx服務器:
# /usr/local/nginx/sbin/nginx -s stop
對應目錄建立index.php文件測試:
瀏覽器測試:
把php、php-fpm局部命令添加到系統全局命令中:
# ln -s /usr/local/php/bin/php /bin/ # ln -s /usr/local/php/sbin/php-fpm /sbin/
測試全局命令php:
測試全局命令php-fpm:
設置nginx、php-fpm開機自動啓動,編輯/etc/rc.local文件,添加nginx、php-fpm的啓動命令到其中保存便可: