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

Nginx子域名访问静态资源返回404问题求助

问题

主域名部署的NuxtJS运行正常,但子域名托管静态资源(图片)时持续返回404错误,已创建符号链接,附相关Nginx配置如下:

子域名配置文件:/etc/nginx/sites-enabled/dev.venegrad.com

server {
    listen 80;
    server_name dev.venegrad.com www.dev.venegrad.com;
    root /root/dev.venegrad.com;
    index index.html;
    autoindex on;

    location / {
  
    }
}

主域名配置文件:/etc/nginx/sites-enabled/venegrad.com

server {
    server_name venegrad.com www.venegrad.com;

    location / {
        proxy_pass http://localhost:3000;
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_set_header Host $host;
        proxy_cache_bypass $http_upgrade;
    }

    listen [::]:443 ssl; # managed by Certbot
    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/venegrad.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/venegrad.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot


}
server {
    if ($host = www.venegrad.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    if ($host = venegrad.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot


    listen 80;
    listen [::]:80;
    server_name venegrad.com www.venegrad.com;
    #return 404; # managed by Certbot

}
排查建议
  • 路径与权限检查
    • 确认/root/dev.venegrad.com目录存在,目标图片文件或符号链接指向的文件确实在该路径下
    • 检查Nginx运行用户(一般是www-data)是否拥有该目录及文件的读取权限,/root目录默认权限严格,大概率会导致Nginx无法访问,建议将静态资源迁移到/var/www这类常规web目录
  • 符号链接验证
    • 执行ls -l /root/dev.venegrad.com查看符号链接的指向是否正确,目标路径的文件是否存在且权限正常
  • Nginx配置校验
    • 子域名仅监听80端口,若用户用HTTPS访问会出现错误,需为子域名添加SSL配置(可参考主域名的Certbot生成流程)
    • 执行nginx -t检查配置语法是否正确,无报错则重启Nginx:systemctl restart nginx
    • 确认子域名的DNS解析已正确指向服务器IP
  • 请求路径匹配
    • 若图片放在子目录,比如/images,需确保访问URL(如dev.venegrad.com/images/photo.jpg)对应的实际路径/root/dev.venegrad.com/images/photo.jpg存在

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.01 11:37:35