Freebsd

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

  • April 21, 2017

我正在嘗試在 FreeBSD 上設置 nginx 和 cgit,但 nginx 無法訪問/var/run/fcgiwrap/fcgiwrap.sock

在我的/etc/rc.conf我已經設置了fcgiwrap_user="www",並且www也是使用者 nginx 執行的。

當我為表演fcgiwrap.sock所擁有時,一切都按照我想要的方式進行。www``chown 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之後確實存在。

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

查看程式碼,fcgiwrap_user設置執行守護程序的程序的所有者(預設root)。

您需要設置fcgiwrap_socket_owner="www"以設置套接字的所有者。

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

引用自:https://unix.stackexchange.com/questions/358805