zoukankan      html  css  js  c++  java
  • nginx静态资源文件无法访问,403 forbidden错误

          今天在搭建nginx环境时出现一个奇怪问题,配置的静态资源目录下面文件无法访问,浏览器访问出现403 forbidden,环境是centos7 + nginx 1.6。nginx.conf中http配置如下:

    1. ……  
    2.   
    3. http {  
    4.     include       mime.types;  
    5.     default_type  application/octet-stream;  
    6.     sendfile        on;  
    7.     keepalive_timeout  65;  
    8.   
    9.     upstream  tomcat_server {  
    10.         server   10.10.100.52:8080;  
    11.     }  
    12.   
    13.     server {  
    14.         listen  80;  
    15.         charset  utf-8;  
    16.         server_name  localhost;  
    17.   
    18.         location /fcm/ {  
    19.              index  index.html index.htm;  
    20.              proxy_pass       http://tomcat_server;  
    21.              proxy_set_header  X-Real-IP  $remote_addr;  
    22.              client_max_body_size  100m;  
    23.         }  
    24.   
    25.         location /static/ {  
    26.            root /home/www/static;  
    27.         }  
    28.   
    29.         error_page   500 502 503 504  /50x.html;  
    30.         location = /50x.html {  
    31.             root   html;  
    32.         }  
    33.     }  
    34. }  
    35.   
    36. ……  

          从配置上看没有什么问题,而且这里配置的fcm转发到tomcat是没问题的,之前环境都是这么配的都没问题,查看nginx的log文件,发现错误日志中静态文件访问都出现 Permission denied的权限错误,但是将/home/www/static目录赋予777的最高权限还是不能解决。

     

          后来看见nginx.conf头部有一行注释的#user  nobody; 遂想可能和这有关系,取消注释,重启nginx,访问还是有问题,查了一下这行是设置nginx运行用户的,遂将nobody改成root,重启好了,找了好久的问题居然是这个原因,喜大普奔!!

     

          后来想以前我都是在Linux的root用户下安装软件和操作,nginx是在root下安装的,所以没设user也没问题,这次由于centos7刚出来所以我下载了一个cenos尝鲜,并新建的一个用户,不是用root用户操作的所以就不和谐了。

     

          所以最终解决方法是在nginx.conf配置文件头部加user root:

    1. user  root;  
    2. worker_processes  8;  
    3.   
    4. #error_log  logs/error.log;  
    5. #error_log  logs/error.log  notice;  
    6. #error_log  logs/error.log  info;  
    7. #pid        logs/nginx.pid;  
    8.   
    9. events {  
    10.     worker_connections  1024;  
    11. }  
    12.   
    13. …… 
  • 相关阅读:
    [DB] 数据库的连接
    JS leetcode 翻转字符串里的单词 题解分析
    JS leetcode 拥有最多糖果的孩子 题解分析,六一快乐。
    JS leetcode 搜索插入位置 题解分析
    JS leetcode 杨辉三角Ⅱ 题解分析
    JS leetcode 寻找数组的中心索引 题解分析
    JS leetcode 移除元素 题解分析
    JS leetcode 最大连续1的个数 题解分析
    JS leetcode 两数之和 II
    JS leetcode 反转字符串 题解分析
  • 原文地址:https://www.cnblogs.com/chenweixuan/p/6668848.html
Copyright © 2011-2022 走看看