LNMP nginx配置和 php fpm通道詳解

2021-09-20 20:19:07 字數 1779 閱讀 4599

一、fastcgi?

fastcgi是由cgi(common gateway inte***ce,通用閘道器介面)發展而來,是http伺服器(nginx、apache)和動態指令碼語言(php)之間的通訊介面。記住,fastcgi只是乙個介面。

fastcgi的優點:fastcgi採用c/s結構,可以將http伺服器和動態指令碼解析伺服器分離(二者可以部署在不同的伺服器

上),讓http伺服器專一處理靜態請求和**動態請求到指令碼解析伺服器;指令碼解析伺服器則專一處理動態指令碼的請求。

二、nginx+fastcgi

nginx不支援對外部程式的直接呼叫或者解析,必須通過fastcgi進行呼叫。nginx收到cgi請求之後,fastcgi介面在指令碼解析伺服器上,啟動乙個或者多個守護程序對動態指令碼進行解析。

三、php-fpm

fastcgi程序管理器/引擎:即對動態指令碼進行實際解析的守護程序,由fastcgi啟動。這裡,php-fpm就是支援解析php的乙個fastcgi程序管理器/引擎。

fastcgi是nginx和php之間的乙個通訊介面,該介面實際處理過程通過啟動php-fpm程序來解析php指令碼,即php-fpm相當於乙個動態應用伺服器, 從而實現nginx動態解析php。因此,如果nginx伺服器需要支援php解析,需要在nginx.conf中增加php的配置:將php指令碼**到 fastcgi程序監聽的ip位址和埠(php-fpm.conf中指定)。同時,php安裝的時候,需要開啟支援fastcgi選項,並且編譯安裝 php-fpm補丁/擴充套件,同時,需要啟動php-fpm程序,才可以解析nginx通過fastcgi**過來的php指令碼

貼上問題:

分析問題(和js都沒載入)

分析原因:js和都走了php-fpm通道。php-fpm就是支援解析php的乙個fastcgi程序管理器/引擎。

解決辦法如下:

延伸:php-fpm單獨主機執行

後端主機設定

測試ok

php安裝和配置

過年在家,難得空下來想搞個各個 自己申請個網域名稱,租用下伺服器空間。看來看去還是php的server比較便宜,而且現成的 模板比較多。以前也幫別人管理過論壇和一些明星 那時都是用別人的模板,自己做的最多的就是一些美工或一些靜態頁面,沒時間對php進行深入的研究。在這裡我先總結下php安裝和配置,它...

window配置php環境和mac配置php

因為公司前端原來的edp框架是使用的是php的乙個框架,所以在執行專案的時候需要安裝php環境,網上查了好多,答案都不一樣,找了好多五花八門,試了好多都不行,而且大部分是php mysql apache的安裝配置,沒有單獨裝php環境的,說明這三個是相輔相成的,在公司當時心裡急,反倒沒有做好,回家的...

php連線mysql測試和配置

php連線mysql測試 link mysql connect localhost root 123456 if link echo 失敗 else echo 成功 mysql close 執行 出現 call to undefined function mysql connect 失敗 將php ...