• 现象
    操作系统为 CentOS, Nginx 与 Colyseus 的安装配置均无问题. 客户端报502 bad gateway,经检查服务器端的 Nginx 日志, 发现报 permisson deny.

  • 原因
    SELinux 默认并没有给足 Nginx 权限.
    此时输入 getsebool -a | grep httpd 可以发现, httpd_can_network_connect 处于 off 状态.

    0_1632915759710_b4f0552e-fe84-4dbf-8a44-aa9f60675397-image.png

  • 解决
    调整 SELinux

    • 开启权限(推荐)
      setsebool -P httpd_can_network_connect 1
      
    • 完全关闭
      修改 /etc/selinux/configSELINUX 的值为 disabled 保存后重启 Linux.
      SELINUX = disabled
      
  • 检查 SELinux 状态

    • 简单版
      getenforce
      
    • 详情版
      sestatus
      
    • 极致版
      getsebool