nginx+php的運行原理是什么-創(chuàng)新互聯(lián)

這篇文章給大家介紹nginx+php的運行原理是什么,內(nèi)容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

創(chuàng)新互聯(lián)公司客戶idc服務(wù)中心,提供移動服務(wù)器托管、成都服務(wù)器、成都主機托管、成都雙線服務(wù)器等業(yè)務(wù)的一站式服務(wù)。通過各地的服務(wù)中心,我們向成都用戶提供優(yōu)質(zhì)廉價的產(chǎn)品以及開放、透明、穩(wěn)定、高性價比的服務(wù),資深網(wǎng)絡(luò)工程師在機房提供7*24小時標準級技術(shù)保障。

一、nginx+php運行原理:


首先簡單的講一講原理,目前主流的nginx+php的運行原理如下:


1、nginx的worker進程直接管理每一個請求到nginx的網(wǎng)絡(luò)請求。


2、對于php而言,由于在整個網(wǎng)絡(luò)請求的過程中php是一個cgi程序的角色,所以采用名為php-fpm的進程管理程序來對這些被請求的php程序進行管理。php-fpm程序也如同nginx一樣,需要監(jiān)聽端口,并且有master和worker進程。worker進程直接管理每一個php進程。


3、關(guān)于fastcgi:fastcgi是一種進程管理器,管理cgi進程。市面上有多種實現(xiàn)了fastcgi功能的進程管理器,php-fpm就是其中的一種。再提一點,php-fpm作為一種fast-cgi進程管理服務(wù),會監(jiān)聽端口,一般默認監(jiān)聽9000端口,并且是監(jiān)聽本機,也就是只接收來自本機的端口請求,所以我們通常輸入命令 netstat -nlpt|grep php-fpm 會得到:


tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 1057/php-fpm


這里的127.0.0.1:9000 就是監(jiān)聽本機9000端口的意思。


4、關(guān)于fastcgi的配置文件,目前fastcgi的配置文件一般放在nginx.conf同級目錄下,配置文件形式,一般有兩種:fastcgi.conf 和 fastcgi_params。不同的nginx版本會有不同的配置文件,這兩個配置文件有一個非常重要的區(qū)別:fastcgi_parames文件中缺少下列配置:


fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;


我們可以打開fastcgi_parames文件加上上述行,也可以在要使用配置的地方動態(tài)添加。使得該配置生效。


5、當需要處理php請求時,nginx的worker進程會將請求移交給php-fpm的worker進程進行處理,也就是最開頭所說的nginx調(diào)用了php,其實嚴格得講是nginx間接調(diào)用php。
了解了上面的這五個簡單原理,在nginx中配置php調(diào)用方法就變得易如反掌。


二、配置文件:

直接貼上代碼逐行進行講解,此處貼出一個能正常啟動php腳本的最簡nginx vhost配置:


server { 
  listen    8011; 
  server_name test.cn; 
  location ~ \.php?.*$ { 
    root      /share/test; 
    fastcgi_pass  127.0.0.1:9000; 
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 
    include    fastcgi_params; 
  } 
}

新聞名稱:nginx+php的運行原理是什么-創(chuàng)新互聯(lián)
瀏覽地址:http://muchs.cn/article10/dpisdo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站營銷、品牌網(wǎng)站建設(shè)手機網(wǎng)站建設(shè)、定制開發(fā)、營銷型網(wǎng)站建設(shè)、網(wǎng)站設(shè)計

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)