nginx不会加载符号链接的conf文件

时间:2015-10-14 02:09:59

标签: nginx

我有2台服务器(新旧服务器)

在两台服务器上都有一个名为mysite.conf的conf文件,它与符号链接到/var/local/mysite/conf/mysite.conf

/etc/nginx/conf.d/mysite.conf - > /var/local/mysite/conf/mysite.conf

在旧服务器上,一切正常。但是,在新服务器上,它不会遵循符号链接。如果我将conf文件设为真实文件,那么nginx会加载它/etc/nginx/conf.d/mysite.conf并且它可以工作。

有什么区别?

.conf文件的文件权限相同。

主/etc/nginx/nginx.conf文件完全相同。

2 个答案:

答案 0 :(得分:0)

尝试添加到您的nginx.conf文件中:

http {
    disable_symlinks off;
}

答案 1 :(得分:0)

我明白了。这是SELinux。谢谢Alexey Ten。要治愈它,您需要制作一个模块来调整SELinux设置。

tail /var/log/audit/audit.log | audit2why
tail /var/log/audit/audit.log | audit2allow -m myapplocal > myapplocal.te
tail /var/log/audit/audit.log | audit2allow -M myapplocal 
semodule -i myapplocal.pp 

生成的模块对我来说是这样的:

require {
    type httpd_t;
    type var_t;
    class file getattr;
}

#============= httpd_t ==============
allow httpd_t var_t:file getattr;