Rebron1900
V2EX  ›  问与答

nginx 部署静态网站提示 403 错误

  •  
  •   Rebron1900 · Jul 22, 2024 · 1763 views
    This topic created in 700 days ago, the information mentioned may be changed or developed.

    我在 Github Action 中用 rsync 通过 ssh 部署了生成的静态网站到我的 VPS 上,并用 nginx 做了发布,但是访问时提示 403 错误,log 日志如下:

    2024/07/22 15:40:09 [error] 68243#68243: *7557 "/home/*****/data/blog-data/index.html" is forbidden (13: Permission denied), client: ***.***.**.**, server: blog.com, request: "GET / HTTP/1.1", host: "blog.com"
    

    我尝试根据 GPT4o 给的解决方案,将改目录用户组改为了 www-root 但是依旧 403 错误。

    也尝试过以下操作,也依旧 403 。

    # 设置目录权限为 755  
    find /home/*****/data/blog-data -type d -exec chmod 755 {} \;  
    
    # 设置文件权限为 644  
    find /home/*****/data/blog-data -type f -exec chmod 644 {} \;  
    

    nginx 配置文件如下:

    server {
        listen              443 ssl;  
        server_name         1900.live;
        
        include snippets/ssl-params.conf;
    
        location / {
            root /home/****/data/blog-data;
            index index.html;
        }
    
    
    
        location ~ /.well-known {
            allow all;
        }
      
    
        client_max_body_size 50m;
    }
    
    9 replies
    Rebron1900
        1
    Rebron1900  
    OP
       Jul 22, 2024
    虚心向各位大佬请教。
    totoro625
        2
    totoro625  
       Jul 22, 2024
    chmod chown 执行的时候加上-R 试试
    Rebron1900
        3
    Rebron1900  
    OP
       Jul 22, 2024
    试过了,依旧不行。
    cnrting
        4
    cnrting  
       Jul 22, 2024
    让我上去看看
    shixinyu
        5
    shixinyu  
       Jul 22, 2024
    不能放在 /home 下的子目录,会有权限问题。
    放在 /opt 下试试,另外如果是红帽系还需要看看是否关闭了 SELinux 。
    asonz3157
        6
    asonz3157  
       Jul 22, 2024
    先看下 nginx 的 worker 用户用的是哪个:grep user /etc/nginx/nginx.conf 。

    如果 worker 不是 ***** 的话,它是没有权限进到 ***** 的家目录的。
    Rebron1900
        7
    Rebron1900  
    OP
       Jul 22, 2024
    @shixinyu 我试着放在 var 下,可以了,真是药到病除呀。
    另外,我可以简历软链接到个人目录中吗?
    Rebron1900
        8
    Rebron1900  
    OP
       Jul 22, 2024
    @jason1121 懂了,谢谢大佬。
    amrice
        9
    amrice  
       Jul 22, 2024 via Android
    这不权限不足吗,看看 nginx 安装目录所属用户和用户组,然后 chown-R blog-data ,权限改 775 试试
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5504 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 78ms · UTC 07:24 · PVG 15:24 · LAX 00:24 · JFK 03:24
    ♥ Do have faith in what you're doing.