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"

相关内容