Skip to content

问题现象

在后台或移动端上传图片后,图片在列表、详情页或手机端显示为破损图标、空白裂图,或在开发者工具中查看图片链接返回 404 Not Found403 ForbiddenCORS 跨域报错Mixed Content 混合内容警告


常见原因与解决步骤

检查后台系统网站域名配置(最常见)

  1. 登录平台总后台 -> 【设置】 -> 【系统设置】 -> 【基础设置】(或站点配置)。
  2. 查看 网站域名 / 接口域名 设置:
    • 必须填写完整的站点访问域名,包括前缀协议,例如:https://www.yourdomain.com(若开启了 SSL,必须以 https:// 开头,避免引发浏览器 Mixed Content 拦截)。
    • 末尾不得带有斜杠 /
  3. 点击【保存】并重启 Swoole 守护进程。

检查云存储配置(七牛云 / 阿里云 OSS / 腾讯云 COS / 华为云 OBS)

若系统启用了第三方对象云存储:

  1. 检查后台云存储配置中的 空间名称(Bucket)访问密钥(AK/SK)绑定的自定义域名 是否正确。
  2. 确认自定义云存储域名已配置有效的 SSL 证书(支持 HTTPS 访问)。
  3. 确认云存储 Bucket 的访问权限已设置为 公共读(Public Read)
  4. 若图片在跨端(如 H5 页面中生成海报或 canvas 绘图)无法加载,需在云存储控制台开启 CORS 跨域资源共享规则(允许来源 *,允许 Methods GET, POST, HEAD)。

本地存储模式下的 Nginx 静态资源拦截检查

若使用的是服务器本地存储:

  1. 检查上传目录物理路径 /www/wwwroot/你的项目/public/uploads 是否存在该文件。
  2. 检查 Nginx 配置文件中是否放行了静态图片后缀的访问:
    nginx
    location ~ .*\.(gif|jpg|jpeg|png|bmp|webp|ico|svg)$ {
        root /www/wwwroot/你的项目/public;
        expires 30d;
        access_log off;
    }
  3. 确保 public/uploads 目录权限为 755777,所有者为 www:www

承信租多门店租赁商城系统官方文档