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

NGINX无法加载jpg/png图片但可正常加载其他文件问题排查

NGINX无法加载图片文件(404错误)的原因与解决方法

可能原因

  • 文件权限不足:NGINX运行用户(通常为www-data)没有读取图片文件的权限。
  • 文件名大小写不匹配:Linux系统区分大小写,URL中的文件名和服务器实际文件名大小写不一致。
  • 全局配置存在冲突:其他针对.jpg/.png的location规则拦截了uploads目录的图片请求。
  • 文件实际路径错误:/var/www/uploads/目录下不存在对应图片,或alias路径配置有误。

解决方法

1. 修复文件权限

执行以下命令,确保NGINX用户拥有uploads目录及文件的读取权限:

chown -R www-data:www-data /var/www/uploads/
chmod -R 755 /var/www/uploads/

2. 验证文件名与路径

登录服务器,检查目标图片是否存在且文件名匹配:

ls -l /var/www/uploads/

确认test.jpg/test.png存在,且大小写和访问URL完全一致。

3. 调整NGINX配置优先级

检查全局配置中是否有拦截图片的规则,若存在,修改/uploads/的location块,添加^~修饰符提升匹配优先级:

location ^~ /uploads/ {
    alias /var/www/uploads/;
    autoindex on;
}

^~会让该location优先匹配,避免被正则规则拦截。

4. 验证配置并重启NGINX

修改配置后,先验证配置合法性:

nginx -t

输出ok后,重启NGINX生效:

systemctl restart nginx

内容的提问来源于stack exchange,提问作者Philip F.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.28 13:17:17