Nginx解决403 forbidden的完整步骤


Posted in Servers onApril 01, 2021

网页显示 403 Forbidden

Nginx(yum 安装日志一般在/var/log/nginx/error.log) 错误日志显示

open() "/web/www/one.txt" failed (13: Permission denied), client: 192.168.1.110, server: rumenz.com, request: "GET /one.txt HTTP/1.1", host: "rumenz.com"

总结四种原因:

  1. SELinux没有关闭
  2. Nginx启动用户和工作用户不一致
  3. 网页所在的目录权限不对
  4. 缺少默认的首页

解决方案:

SELinux没有关闭

1.1 临时关闭SELinux,但是重启操作系统还会开启

setenforce=0

1.2 永久关闭SELinux

vim /etc/selinux/config

将SELINUX=enforcing 修改为 SELINUX=disabled 状态

Nginx启动用户和工作用户不一致

[root@rumenz#]ps aux | grep "nginx: worker process" | awk '{print $1}'
nobody
root

修改Nginx 配置文件

vim /etc/nginx/nginx.conf

将 user nobody; 修改为 user root; 重启Nginx

注意:Nginx的启动用户和工作用户可以不一致,但是要配好网页目录的权限,让工作用户有访问网页目录的权限

网页所在的目录权限问题

3.1 精细控制:网页根目录要用x权限(也就是可以cd进去),网页所在的父级目录要有r(可读权限)

3.2 简单粗暴(不推荐,不安全,但是效果明显):

chmod -R 777 /web
chmod -R 777 /web/www

缺少默认的首页

4.1 权限配完了,访问首页还显示403 Forbidden?

4.2 网页根目录提供一个默认的首页:index.html

到此这篇关于Nginx解决403 forbidden的文章就介绍到这了,更多相关Nginx解决403 forbidden内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Servers 相关文章推荐
Apache压力测试工具的安装使用
Mar 31 Servers
fastdfs+nginx集群搭建的实现
Mar 31 Servers
提升Nginx性能的一些建议
Mar 31 Servers
Nginx配置Https安全认证的实现
May 26 Servers
Nginx四层负载均衡的配置指南
Jun 11 Servers
nginx配置之并发频次限制
Apr 18 Servers
Nginx 匹配方式
May 15 Servers
Nginx HTTP跳转至HTTPS
May 15 Servers
Linux在两个服务器直接传文件的操作方法
Aug 05 Servers
windows系统搭建WEB服务器详细教程
Aug 05 Servers
win10搭建配置ftp服务器的方法
Aug 05 Servers
zabbix如何添加监控主机和自定义监控项
Aug 14 Servers
详解nginx.conf 中 root 目录设置问题
Apr 01 #Servers
小程序后台PHP版本部署运行 LNMP+WNMP
扩展多台相同的Web服务器
Apr 01 #Servers
Nginx安装完成没有生成sbin目录的解决方法
nginx location优先级的深入讲解
Mar 31 #Servers
Nginx反爬虫策略,防止UA抓取网站
Mar 31 #Servers
Mac环境Nginx配置和访问本地静态资源的实现
Mar 31 #Servers
You might like
php 判断过去离现在几年的函数(实例代码)
2016/11/15 PHP
laravel手动创建数组分页的实现代码
2018/06/07 PHP
PHP使用HTML5 FileApi实现Ajax上传文件功能示例
2019/07/01 PHP
php模拟post提交请求调用接口示例解析
2020/08/07 PHP
brook javascript框架介绍
2011/10/10 Javascript
nullJavascript中创建对象的五种方法实例
2013/05/07 Javascript
Jquery 改变radio/checkbox选中状态,获取选中的值(示例代码)
2013/12/12 Javascript
jQuery实现新消息在网页标题闪烁提示
2015/06/23 Javascript
JavaScript File API实现文件上传预览
2016/02/02 Javascript
jQuery动态加载css文件实现方法
2016/06/15 Javascript
jQuery组件easyui对话框实现代码
2016/08/25 Javascript
JS获取IE版本号与HTML设置IE文档模式的方法
2016/10/09 Javascript
Bootstrap Table使用方法解析
2016/10/19 Javascript
Bootstrap源码解读按钮(5)
2016/12/23 Javascript
浅谈pc端rem字体设置的问题
2017/08/03 Javascript
angular2 ng2-file-upload上传示例代码
2018/08/23 Javascript
js取0-9随机取4个数不重复的数字代码实例
2019/03/27 Javascript
使用React手写一个对话框或模态框的方法示例
2019/04/25 Javascript
JavaScript编写开发动态时钟
2020/07/29 Javascript
[42:23]完美世界DOTA2联赛PWL S3 Forest vs Rebirth 第二场 12.10
2020/12/13 DOTA
用Python脚本生成Android SALT扰码的方法
2013/09/18 Python
树莓派中python获取GY-85九轴模块信息示例
2013/12/05 Python
python 简单搭建阻塞式单进程,多进程,多线程服务的实例
2017/11/01 Python
pandas 实现字典转换成DataFrame的方法
2018/07/04 Python
Python简直是万能的,这5大主要用途你一定要知道!(推荐)
2019/04/03 Python
基于Python实现大文件分割和命名脚本过程解析
2019/09/29 Python
OpenCV里的imshow()和Matplotlib.pyplot的imshow()的实现
2019/11/25 Python
Python如何使用argparse模块处理命令行参数
2019/12/11 Python
python简单实现9宫格图片实例
2020/09/03 Python
SCHIESSER荷兰官方网站:德国内衣专家
2020/10/09 全球购物
什么是重载?CTS、CLS和CLR分别做何解释
2012/05/06 面试题
办公室文员自荐书
2014/02/03 职场文书
经理聘任证明
2015/03/02 职场文书
给下属加薪申请报告
2015/05/15 职场文书
垂直极限观后感
2015/06/08 职场文书
读《解忧杂货店》有感:请相信一切都是最好的安排
2019/11/07 职场文书