一台服务器遇到一个故障:访问静态文件的时候nginx报403错误。 一开始以为是没有设置网站默认首页,检查发现首页设置是正常的
故意请求一个存在的test.html,也同样报403错误 又怀疑是站点目录写错了,但如果故意请求一个不存在的文件会报404错误,只对存在的文件才报403,这又排除了站点目录错误。 又怀疑是目录的权限不对,临时把nginx用户的shell设置为bash,然后通过su nginx的方式登录上去看看,cat /home/user1/www/test.html是可以正常读出文件内容的,也可以基本排除是权限问题。为了验证我的判断,我把/home/user1/全部设置为777,果然和我的预期是一样的:全部777了仍然报403错误,彻底排除权限问题。 最终我只能怀疑selinux了,为了验证我临时把selinux关闭:
果然 403变成了200,页面正常的打开了。 查了一下资料,如下命令可以解决:
当然了,彻底关掉selinux也是一个办法:
SELINUX=enforcing 保存 (责任编辑:IT) |