如何配置 fcgiwrap 在 FreeBSD 上运行的用户?

如何配置 fcgiwrap 在 FreeBSD 上运行的用户?

我在 FreeBSD 9.3 上的监狱中运行了 Redmine/Git/nginx/fcgiwrap,用于(可能)通过 HTTP/S 进行身份验证的 Git 提交。一切正常,直到我重新启动监狱。

为了使提交工作,我需要手动/var/run/fcgiwrap/fcgiwrap.sock从更改srwxr-xr-x root:wheelsrwxrwxr-x root:www.

似乎应该有一个更好的方法来做到这一点,以便它在重新启动后持续存在。我的感觉是应该有某种方法告诉 fcgiwrap 谁运行,但我无法弄清楚在 FreeBSD 上指定的位置。

手册页说:

您很可能希望使用spawn-fcgi使用如下配置来启动fcgiwrap:

FCGI_SOCKET=/var/run/fcgiwrap.sock
FCGI_PROGRAM=/usr/sbin/fcgiwrap
FCGI_USER=nginx
FCGI_GROUP=www
FCGI_EXTRA_OPTIONS="-M 0700"
ALLOWED_ENV="PATH"

基于这个问题我已经查找过,/usr/local/etc/rc.dspawn-fcgi它不在那里,我认为这意味着它没有安装。安装spawn-fcgi只是为了管理fcgiwrap的运行方式似乎也有些过分了。

我发现里面/usr/local/etc/rc.d/fcgiwrap写着:

# fcgiwrap rc.d script supports multiple profiles (a-la rc.d/nginx)
# When profiles are specified, the non-profile specific parameters become defaults.
# You need to make sure that no two profiles have the same socket parameter.

什么是配置文件?我将如何为这个 rc.d 脚本创建一个配置文件?还是我以错误的方式处理这一切?

答案1

好的。没关系。我比我想象的更接近解决方案。通读BSD 中的实用 rc.d 脚本我只需要添加fcgiwrap_user="www"/etc/rc.conf.

相关内容