centos 配置php fpm和nginx的通訊

2021-07-03 02:11:28 字數 1392 閱讀 8432

以下是nginx的預設配置檔案:

server

#error_page 404 /404.html;

# redirect server error pages to the static page /50x.html

#error_page 500 502 503 504 /50x.html;

location = /50x.html

# proxy the php scripts to apache listening on 127.0.0.1:80

##location ~ \.php$

# pass the php scripts to fastcgi server listening on 127.0.0.1:9000

##location ~ \.php$

# deny access to .htaccess files, if apache's document root

# concurs with nginx's one

##location ~ /\.ht

}

乙個location匹配乙個(一種)url。

匹配到對應的url就轉到對應的location中,然後進行處理請求。

預設的root是/usr/share/nginx/html,也就是會轉到對應的目錄下進行處理請求。

但是匹配到有php的檔案就沒有辦法進行解析。

這裡用到了php-fpm  也就是fastcgi在php下的乙個類庫。

當匹配到有.php結尾的請求的時候,就將該請求轉到fastcgi進行處理。 關於

server_name 還糾結了好久,當我在同一作業系統下有兩個使用者a和b,兩者都有各自的root目錄進行訪問,並且同時都配置了各自的server。但是nginx的配置檔案是在全域性其作用的。那麼如果在區域網中c訪問這個伺服器的時候,那麼到底訪問哪個目錄呢?

後來,哥哥告訴我了。

一般在上線的**中配置nginx的時候,server_name是網域名稱,根據不同的網域名稱,nginx自然是知道怎麼去轉的。

如果是在區域網中用ip進行訪問,如果存在著兩個server,那麼就配置乙個當用ip進行訪問的時候,預設跳轉到乙個目錄下就可以了。

預設就會請求這個目錄,並用fastccgi進行**。

在配置nginx的時候發現了乙個問題,訪問的root目錄下,.html結尾的靜態檔案是可以正常被訪問的,.php結尾的就不行。

後來才發現,在進行配置的時候,將root變成了區域性變數,導致匹配php檔案的時候,找不到root。自然就找不到要訪問的檔案了。

最後的配置如下:

PHP FPM 的管理和配置

php fpm 是 fastcgi 的程序管理器。php fpm 管理 master 主程序理解以下訊號 檢視 php fpm 使用者 ps aux grep php fpm 檢視 php fpm 程序 pid ps ef grep php fpm 啟動 php fpm php fpm d 關閉 p...

PHP FPM 的管理和配置

php fpm 是 fastcgi 的程序管理器。php fpm 管理 master 主程序理解以下訊號 檢視 php fpm 使用者 ps aux grep php fpm 檢視 php fpm 程序 pid ps ef grep php fpm 啟動 php fpm php fpm d 關閉 p...

LNMP nginx配置和 php fpm通道詳解

一 fastcgi?fastcgi是由cgi common gateway inte ce,通用閘道器介面 發展而來,是http伺服器 nginx apache 和動態指令碼語言 php 之間的通訊介面。記住,fastcgi只是乙個介面。fastcgi的優點 fastcgi採用c s結構,可以將ht...