nginx部署(13:Permission denied)报错

在这里插入图片描述

这个报错有四种可能导致的情况:

  • nginx进程中执行worker process的角色权限不够,用ps -ef | grep nginx来查看所有关于nginx的进程从而检查worker process的角色是谁,是否有足够的权限
    在这里插入图片描述

​ 如果权限不够,可以通过修改/etc/nginx/nginx.conf文件中的user来换有足够权限的角色在这里插入图片描述

  • 部署文件的路径不对(这一点一定要注意)
    在这里插入图片描述

一定要检查清楚路径是否是对的,路径是从根目录开始写的

  • 权限问题,如果nginx没有web目录的操作权限也会导致该报错

    该问题可以通过修改web目录的读写权限或者把nginx的执行用户改为目录的所属用户然后重启nginx即可

    如上述图片中的路径加权限为:

    chmod -R 755 /www
    //-R操作表示递归地应用权限更改,意思是将权限更改应用于指定目录下的所有文件和子目录。
    

​ 重启命令:sudo systemctl restart nginxsudo service nginx restart

  • SELinux被设置为了开启状态的原因

​ SELinux(security enhanced linux)安全增强型Linux系统是一个linux内核模块,也是Linux的一个安全子系统。主要作用是最大限度地减小系统中服务进程可访问的资源(最小权限原则),SElinx开启后会关闭系统中不安全的功能,它有两个级别:

  1. setenforce 0 :表示警告(Permissive)
  2. setenforce 1 :表示强制(Enforcing)

状态分为以下三种:

  1. SELINUX=enforcing #selinux开启,级别为强制
  2. SELINUX=permissive #selinux开启,级别为警告
  3. SELINUX=disabled #selinux关闭

其他具体关于SELinux的内容可以自行了解

首先查看SELinux的状态,可以使用/usr/sbin/sestatus -v进行查看,如果是如下情况就需执行关闭操作

在这里插入图片描述

关闭SELinux的两种方法:

  1. 临时关闭(不用重启系统):setenforce 0;
  2. 修改配置文件/etc/selinux/config,将SELINUX=enforcing改为SELINUX=permissive或者SELINUX=disabled(需要注意的是:修改配置文件之后需要重启系统reboot)
  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值