本文适配帝国CMS 7.0/7.2/7.5所有主流版本,操作无门槛,按照步骤依次排查即可解决问题。
帝国CMS默认按年月目录存储图片附件,根目录下存储路径为d/file/年/月/,第一步先确认文件是否存在:
post_max_size和upload_max_filesize参数,改大后重启PHP即可。Linux服务器权限不足是第二常见故障,web服务器没有读取权限就会返回403导致图片不显示,实操步骤:
nginx,Apache一般是apache,可执行命令ps aux|grep nginx或ps aux|grep httpd,输出第一列就是运行用户。修改权限后刷新网页测试,无法显示继续下一步。
该问题90%出现在网站迁移、域名更换后,分两部分检查:
d/file,子目录安装填子目录名/d/filehttps://你的当前域名/d/file,注意:网站是HTTPS就必须填HTTPS,填HTTP会被浏览器因混合内容拦截,导致图片不显示。如果是新建模板后出现图片不显示,基本都是标签写错,正确的调用标签如下,对应修改即可:
修改模板后保存,重新生成页面测试。
开启伪静态后,规则错误会拦截图片请求,导致404不显示,不同环境给出可直接复制的正确规则:
nginx -s reload重启Nginx即可,该规则自动放行静态图片,不会拦截。开启图片水印后图片不显示,常见两个原因:
e/data/mark/mark.gif,迁移网站时容易漏传,可从官方原包重新提取,官方原包下载地址:https://www.phome.net/download/,下载对应版本后提取文件上传到对应目录即可。迁移后正文内的本地图片路径还是旧域名,可执行SQL批量替换,登录数据库管理后台(如phpMyAdmin),执行以下语句,替换为你的旧域名和新域名:
```
UPDATE [!db.pre!]ecms_news_data_1 SET newstext=REPLACE(newstext, 'http://旧域名.com', 'https://新域名.com');
UPDATE [!db.pre!]ecms_news SET titlepic=REPLACE(titlepic, 'http://旧域名.com', 'https://新域名.com');
```
如果用的不是默认新闻模型,把表名中的ecms_news替换为你自己的模型表名即可,执行后清除缓存重新生成页面,所有图片路径就会批量更新完成。
按照以上步骤从1到5依次排查,99%的帝国CMS图片不显示故障都可以解决,所有操作都可以直接照搬执行,不需要额外技术知识。












易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图