解决方案

403 Forbidden

通常是权限问题, 首先打开站点目录看文件权限, 应满足以下权限:

[root@linuxidc ~]# ll
drwxr-xr-x. 2 root root 4096 Jun 15 03:59 html
[root@linuxidc html]# ll
total 8
-rw-r--r--. 1 root root 616 Jun 15 03:51 index.html

如果以上权限没有问题, 可能就是配置文件的问题, 打开 /etc/nginx.conf, 修改用户权限为:

user root root;

重启nginx即可

$ nginx -s reload

参考:

open() "/run/nginx.pid" failed

报以下错误:

nginx: [error] open() "/run/nginx.pid" failed (2: No such file or directory)

重新绑定配置文件: nginx -c /etc/nginx/nginx.conf, 再运行 nginx -s reload 即可

参考:

still could not bind()

报以下错误:

nginx: [emerg] still could not bind()

查看nginx服务占用并杀死进程:

$ ps -ef | grep nginx
root      5967     1  0 10:06 ?        00:00:00 nginx: master process nginx
nginx     6051  5967  0 10:33 ?        00:00:00 nginx: worker process
nginx     6052  5967  0 10:33 ?        00:00:00 nginx: worker process
nginx     6053  5967  0 10:33 ?        00:00:00 nginx: worker process
nginx     6054  5967  0 10:33 ?        00:00:00 nginx: worker process
root      7041  6616  0 21:04 pts/1    00:00:00 grep --color=auto nginx
$ netstat -tulpn | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      5967/nginx: master
tcp6       0      0 :::80                   :::*                    LISTEN      5967/nginx: master
$ kill -9 5967

指定日志文件时注意事项

如果创建一个 server, 指定了其 access_log 与 error_log, 注意一定得在对应的目录创建对应的日志文件, 否则nginx将无法启动

connect() to 127.0.0.1:8080 failed (13: Permission denied) while connect

在进行 Nginx+Tomcat 负载均衡的时候遇到了这个权限问题,在error.log日志中,我们可以看到如下:

connect() to 127.0.0.1:8080 failed (13: Permission denied) while connecting to upstream

经过一番检查以及google, 应该是SeLinux的导致的。可以选择一些两种方式进行:

1、关闭SeLinux,可以查看以下文章:

2、执行下面的命令

$ setsebool -P httpd_can_network_connect 1

CentOS下查看SeLinux状态及关闭SeLinux

  1. 查看SELinux状态:
$ /usr/sbin/sestatus -v  # 如果SELinux status参数为enabled即为开启状态
SELinux status:                 enabled
$ getenforce  # 也可以用这个命令检查
  1. 关闭SELinux:

临时关闭(不用重启机器)

$ setenforce 0 # 设置SELinux 成为permissive模式
# setenforce 1 # 设置SELinux 成为enforcing模式

修改配置文件需要重启机器

修改 /etc/selinux/config 文件

SELINUX=enforcing 改为 SELINUX=disabled

重启机器即可

MIT Licensed | Copyright © 2018-present 滇ICP备16006294号

Design by Quanzaiyu | Power by VuePress