对于nginx include,open()“ / path / to / include”失败(13:权限被拒绝)

时间:2020-01-01 20:42:43

标签: nginx nginx-config

我遇到了一个非常奇怪的问题,我不确定是什么原因引起的。我正在尝试设置一个测试VPS(使用Digital Ocean和CentOS 7.6),以测试我拥有的一些Ansible脚本。

该脚本生成此配置文件:


server {
    listen 443 ssl;

    set $socket /var/run/php-fpm/deploy.sock;
    server_name servername.com;

    root /home/deploy/project/current/public/;

    ssl_certificate /etc/letsencrypt/live/servername.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/servername.com/privkey.pem;
    include /etc/letsencrypt/options-ssl-nginx.conf;
    ssl_dhparam /etc/ssl/dhparams.pem;

    #charset koi8-r;
    access_log  /var/log/nginx/project.access.log  main;
    error_log /var/log/nginx/project.error.log;

    include /srv/server-config/nginx/includes.d/maintenance.inc;
    include /srv/server-config/nginx/includes.d/silverstripe-4.inc;
}

包含include /etc/letsencrypt/options-ssl-nginx.conf;加载没有问题(据我所知),但是包含include /srv/server-config/nginx/includes.d/maintenance.inc;失败,并显示错误:open() "/path/to/include" failed (13: Permission denied)

我仔细检查了两次权限,路径中的目录似乎都是drwxr-xr-x,文件都是-rw-r--r--

如果我将include /srv/server-config/nginx/includes.d/maintenance.inc;行注释掉,则下一行将引发相同的错误。

我在完整的实时VPS(旧版本的CentOS7)上运行相同的配置/设置,但没有收到此错误。是否在最新的CentOS中更新了某些内容可能会导致这种情况(也许nginx不能包含/ etc /之外的文件)?如果没有,是否有人知道会发生什么?

任何对此表示感谢的帮助,因为我正在敲击键盘上的耳机以尝试解决此问题:-/。

0 个答案:

没有答案