You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Nginx返回404错误求助:未修改默认配置文件

排查Nginx返回404错误的常见原因

我来帮你一步步排查可能导致404的问题,先从几个高频原因入手:

  • 确认站点根目录路径与文件存在性
    先检查你的/sites-available/default配置里的root指令是否指向了正确的目录,并且该目录下存在默认首页文件(比如index.html)。举个正确的配置示例:

    server {
        listen 80 default_server;
        listen [::]:80 default_server;
    
        root /var/www/html;
        index index.html index.htm index.nginx-debian.html;
    
        server_name _;
    
        location / {
            try_files $uri $uri/ =404;
        }
    }
    

    你可以用ls /var/www/html命令验证目录里是否有指定的首页文件,如果文件不存在,要么创建文件,要么修改index指令里的文件名。

  • 检查站点是否已启用
    Nginx只会加载/sites-enabled目录下的配置文件,所以需要确认/sites-available/default已经通过符号链接关联到/sites-enabled:

    ls -l /etc/nginx/sites-enabled/
    

    如果输出里没有指向/sites-available/default的链接,执行以下命令创建:

    sudo ln -s /etc/nginx/sites-available/default /etc/nginx/sites-enabled/
    
  • 验证文件与目录权限
    Nginx通常以www-data用户身份运行,所以网页文件和目录需要对该用户开放读取权限:

    sudo chown -R www-data:www-data /var/www/html
    sudo chmod -R 755 /var/www/html
    
  • 检查配置语法并重启Nginx
    配置文件的语法错误可能导致Nginx无法正确加载配置,先验证语法:

    sudo nginx -t
    

    如果提示test is successful,再重启Nginx让配置生效:

    sudo systemctl restart nginx
    
  • 排查location规则匹配问题
    如果你的配置里有自定义的location块,要确保规则不会错误拦截请求。比如try_files指令如果设置不当,可能会在找不到文件时直接返回404,需要确认try_files的参数是否符合你的需求。

内容的提问来源于stack exchange,提问作者Lee Nelson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 07:31:13