Nginx 说 open()“/etc/nginx/conf.d/foo.conf”失败(13:权限被拒绝)

Nginx 说 open()“/etc/nginx/conf.d/foo.conf”失败(13:权限被拒绝)

这是我的内容ls -al /etc/nginx

total 52
drwxr-xr-x.  4 root root 4096 Jul 28 04:16 .
drwxr-xr-x. 78 root root 8192 Jul 28 03:37 ..
drwxr-xr-x.  2 root root   26 Jul 28 03:55 conf.d
drwxr-xr-x.  2 root root    6 May 10 09:21 default.d
-rw-r--r--.  1 root root 1034 May 10 09:21 fastcgi.conf
-rw-r--r--.  1 root root  964 May 10 09:21 fastcgi_params
-rw-r--r--.  1 root root 2837 May 10 09:21 koi-utf
-rw-r--r--.  1 root root 2223 May 10 09:21 koi-win
-rw-r--r--.  1 root root 3957 May 10 09:21 mime.types
-rw-r--r--.  1 root root 1033 Jul 28 03:43 nginx.conf
-rw-r--r--.  1 root root  596 May 10 09:21 scgi_params
-rw-r--r--.  1 root root  623 May 10 09:21 uwsgi_params
-rw-r--r--.  1 root root 3610 May 10 09:21 win-utf

这是我/var/log/nginx/error.log之后看到的sudo service nginx start

[emerg] 20360#0: open() "/etc/nginx/conf.d/foo.conf" failed
(13: Permission denied) in /etc/nginx/nginx.conf:33

这就是我所拥有的ls -al /etc/nginx/conf.d/

$ ls -al /etc/nginx/conf.d/
total 8
drwxr-xr-x. 2 root root   26 Jul 28 03:55 .
drwxr-xr-x. 4 root root 4096 Jul 28 04:16 ..
-rw-r--r--. 1 root root  230 Jul 28 03:50 foo.conf

怎么了?

答案1

当您因未知原因在文件访问等方面遇到permission denied错误时,可能与 SELinux 有关。特别是当您看到权限后面有一个句点(如相关文件/目录所示)drwxr-xr-x.时,它们可能被错误标记(您可以通过 看到它)并导致问题。ls -lls -Z

您应该首先通过运行来检查当前的 SELinux 模式getenforce。如果显示Enforcing,则暂时将模式设置为Permissive运行setenforce 0,然后查看您的应用程序是否工作。

请参阅您的发行版关于 SELinux 的指南以进行永久修复,包括在启动时设置 SELinux 模式、重新标记文件或目录、更新策略等。CentOS 指南

答案2

改变整个 SElinux 并不总是正确的答案。我不是专家,但如果端口不可访问,我会将其与禁用防火墙进行比较。

其他快速解决方案可能是“恢复文件的 SE 上下文”,特别是如果这些文件是从某个地方复制的。

https://www.thegeekstuff.com/2017/05/restorecon-examples/更多细节。

这些是禁用 SElinux 之前值得尝试的命令

sudo restorecon  /etc/nginx/conf.d/
sudo restorecon  /etc/nginx/conf.d/*

答案3

比禁用 selinux 更好的方法是使用命令

semanage permissive -a httpd_t

这将允许 nginx 服务通过,而无需完全禁用 selinux

更多信息:https://www.nginx.com/blog/using-nginx-plus-with-selinux/

然而对于我来说,command chcon -v --type=httpd_sys_content_t /etc/nginx/*它运行正常,不需要排除 httpd_t

相关内容