Linux

使用 php-fpm 設置 Nginx 配置文件會導致 502 bad gateway

  • February 27, 2013

我正在按照指南將 ubuntu VPS 設置為 wordpress 的 nginx 網路伺服器。

在設置 Nginx 和 PHP 時,我使用的指南建議我取消註釋這一行/etc/nginx/sites-available/default

fastcgi_pass 127.0.0.1:9000;

完成此操作後,儘管伺服器的歡迎頁面有效,但在訪問我創建的 php 文件(包含 phpinfo)時出現 502 bad gateway 錯誤

但是,當我取消註釋此行時:

fastcgi_pass unix:/var/run/php5-fpm.sock;

php文件似乎載入成功

誰能解釋每一行的作用以及為什麼我使用的行有效,而教程中的行不行?

當您使用“fastcgi_pass 127.0.0.1:9000;”時 nginx 嘗試使用埠 9000 上的 TCP 連接連接到 fastcgi,以“解釋”您的 php 文件。使用“fastcgi_pass unix:/var/run/php5-fpm.sock;”時 它嘗試綁定到不使用網路堆棧的套接字文件。這是一種偏好方式,由於權限問題,TCP 套接字通常更容易設置。您不能同時連接到 TCP 埠和 SOCKET。

引用自:https://serverfault.com/questions/483163