FreeBSD 上的 Nginx:fcgiwrap.sock 權限被拒絕

FreeBSD 上的 Nginx:fcgiwrap.sock 權限被拒絕

我正在嘗試在 FreeBSD 上設定 nginx 和 cgit,但 nginx 無法存取/var/run/fcgiwrap/fcgiwrap.sock.

在我的中,/etc/rc.conf我已經設定了fcgiwrap_user="www",也是wwwnginx 運行的用戶。

當我透過表演fcgiwrap.sock而擁有時,一切都會按照我想要的方式進行。wwwchown www /var/run/fcgiwrap/fcgiwrap.sock

然而,這當然不是執行此操作的正確方法,而且它只會持續到重新啟動為止。

我假設環境fcgiwrap_user="www"也會決定這一點。

我錯過了什麼嗎?

更新:

我注意到當我使用service fcgiwrap startor時restart,訊息Starting fcgiwrap後面跟著chmod: /var/run/fcgiwrap/fcgiwrap.sock: No such file or directory。但/var/run/fcgiwrap/fcgiwrap.sock之後確實存在。

答案1

RC 腳本位於/usr/local/etc/rc.d/fcgiwrap.

查看程式碼,fcgiwrap_user設定運行守護程序的進程的擁有者(預設root)。

您需要設定fcgiwrap_socket_owner="www"來設定套接字的擁有者。

答案2

理查德史密斯的答案也對我有用,但就我而言,我也必須設定fcgiwrap_socket_group="www"。這些設定似乎是新的,因為之前設定就足夠了fcgiwrap_user="www"

相關內容