最近在centos6.5的机子上部署ngxin的时候,出现了403的错误,晚上google了一个晚上,终于解决了,写这篇文章记录下解决方法吧。
1、出现错误
配置好nginx后,启动nginx, 发现访问出错,查看nginx日志,路径/var/log/nginx/error.log
发现报错Permission denied
2、解决
引起nginx 403原因:
- 1、缺少文件索引
- 2、权限问题
- 3、SELinux状态
1、缺少文件索引
缺少index.html或者index.php文件,就是配置文件中index index.html index.htm这行中的指定的文件
server {
listen 80;
server_name localhost;
index index.html;
root /data/www/;
}
如果在/data/www/下面没有index.php,index.html的时候,直接文件,会报403 forbidden
2、权限问题
权限问题,如果nginx没有web目录的操作权限,也会出现403错误
chmod -R 777 /data
chmod -R 777 /data/www/
3、SELinux状态
SELinux设置为开启状态(enabled)的原因
- 3.1 查看当前selinux
/usr/sbin/sestatus
- 3.2、将SELINUX=enforcing 修改为 SELINUX=disabled 状态
vi /etc/selinux/config
#SELINUX=enforcing
SELINUX=disabled
- 3.3、重启
reboot