第一步:最常见的原因 - 图片路径问题
这是最核心、最常见的问题,织梦(DedeCMS)的图片路径有两种存储方式:绝对路径 和 相对路径,如果设置不当,或者网站发生迁移,就极易导致图片显示不全或无法显示。

(图片来源网络,侵删)
如何检查和修复:
-
检查后台设置:
- 登录织梦后台。
- 进入 “系统” -> “系统基本参数” -> “核心设置”。
- 找到 “网站图片默认路径” 这一项。
- 推荐设置(绝对路径):
http://你的域名/uploads/(注意:不要以 开头,要包含完整的http://或https://)。 - 不推荐设置(相对路径):
/uploads/或../uploads/,这种路径在网站根目录下正常,但在子目录或某些特定情况下容易出错。
- 推荐设置(绝对路径):
-
检查文章内容中的路径:
- 进入任意一篇文章的编辑模式(后台“内容管理”->“文档管理”)。
- 切换到 “源代码” 视图。
- 查看图片的
src属性,如果它显示的是类似/uploads/xxx.jpg这样的路径,那它就是相对路径,是问题的根源。
-
批量修复图片路径:
-
如果后台设置是正确的,但文章内容里的路径是错的,就需要批量修复。
-
织梦后台提供了一个强大的工具:“文档关键词维护”。
-
进入 “系统” -> “SQL命令行工具”。
-
在命令框中输入以下SQL语句,然后点击“查询”执行。(请务必先备份数据库!)
-- 将文章内容中的相对路径 /uploads/ 替换为绝对路径 http://你的域名/uploads/ UPDATE dede_archives SET body = REPLACE(body, '/uploads/', 'http://你的域名/uploads/'); -- 将文章摘要中的相对路径 /uploads/ 替换为绝对路径 UPDATE dede_archives SET description = REPLACE(description, '/uploads/', 'http://你的域名/uploads/'); -- 如果你的图片在其它目录,/special/,也需要相应修改 -- UPDATE dede_archives SET body = REPLACE(body, '/special/', 'http://你的域名/special/');
注意:
dede_archives是文章表,如果你的前缀改了,请替换成你的表前缀。http://你的域名/请替换成你自己的域名。- 这个操作会修改所有文章,请谨慎操作。
-
第二步:服务器和浏览器缓存问题
修改了路径后,如果浏览器或服务器还保存着旧的缓存,图片可能依然显示不全。
如何检查和修复:
-
浏览器缓存:
- 强制刷新浏览器: 按
Ctrl + F5(Windows) 或Cmd + Shift + R(Mac)。 - 无痕/隐私模式访问: 在无痕模式下打开网站,看看问题是否解决,如果解决了,就是浏览器缓存的问题。
- 清除浏览器缓存: 清除浏览器的缓存和Cookie。
- 强制刷新浏览器: 按
-
服务器缓存:
- 服务器缓存: 如果你的网站使用了 Nginx、Apache 等服务器自带的缓存功能,修改后需要清除服务器缓存,登录你的服务器控制面板(如宝塔面板、cPanel等),找到缓存管理并清除。
- CDN缓存: 如果你的网站使用了CDN(内容分发网络,如阿里云CDN、腾讯云CDN、Cloudflare),图片路径修改后,需要登录CDN控制台,刷新“文件”,把有问题的图片文件刷新一遍,让CDN节点重新从你的源站拉取最新文件。
- 织梦缓存: 织梦自身也有缓存,在后台,可以尝试 “系统” -> “清除缓存”,清除所有缓存文件。
第三步:图片文件本身或权限问题
有时候问题出在图片文件本身。
如何检查和修复:
-
检查图片文件是否存在:
- 复制文章中图片的完整URL(
http://你的域名/uploads/2025/10/abc.jpg)。 - 在浏览器的新窗口中直接打开这个链接。
- 如果图片能正常显示,说明文件本身没问题,问题出在路径解析上(请返回第一步)。
- 如果图片无法显示,或显示404错误,说明服务器上根本没有这个文件,或者文件权限不对。
- 复制文章中图片的完整URL(
-
检查文件上传目录权限:
- 通过FTP或文件管理器连接到你的服务器。
- 检查
/uploads/目录及其子目录的权限。 - Linux服务器权限: 通常需要设置为
755或750。 - 目录内的文件权限: 通常需要设置为
644。 - 如果权限不正确,Web服务器(如Apache、Nginx)可能没有读取这些文件的权限,导致图片无法显示。
第四步:模板和CSS样式问题
图片本身是完整的,但被CSS样式“裁剪”了。
如何检查和修复:
- 检查CSS样式:
- 在浏览器中右键点击显示不全的图片,选择 “检查” 或 “Inspect”。
- 浏览器会自动定位到控制该图片的CSS代码。
- 重点检查以下属性:
width和height:是否被设置了固定的、较小的尺寸?max-width和max-height:是否限制了最大尺寸?object-fit:如果设置了cover或contain,可能会影响显示效果。overflow: hidden:如果父容器设置了此属性,图片超出部分会被隐藏。
- 如果发现问题,可以临时在浏览器开发者工具中修改这些CSS值,看看图片是否能完整显示,如果能,就去对应的模板文件中找到这段CSS并进行修改。
第五步:PHP环境和GD库问题
这是一个比较底层但可能的原因,织梦处理图片(如生成缩略图)依赖于服务器的GD库。
如何检查和修复:
-
检查GD库是否安装:
- 在织梦后台,进入 “系统” -> “系统信息” -> “环境检测”。
- 查看 “GD库支持” 是否为“是”,如果不是,说明GD库未安装或未启用。
- 你也可以在服务器上创建一个
phpinfo.php文件,内容为<?php phpinfo(); ?>,然后在浏览器中访问它,搜索GD相关的信息。
-
解决方案:
- 如果GD库缺失,你需要联系你的服务器空间商,让他们帮你安装或开启GD库。
- 如果你使用的是宝塔面板,可以在“软件商店”中找到PHP版本,进入“设置” -> “安装扩展”,然后安装
gd扩展。
总结与排查流程建议
遇到“图片显示不全”的问题,请按照以下顺序进行排查,这能帮你最高效地定位问题:
- 首选方案: 登录后台,检查 “系统基本参数” -> “核心设置” 中的 “网站图片默认路径” 是否为绝对路径,如果不是,修改它,然后使用 “SQL命令行工具” 批量替换文章内容中的旧路径。
- 清除缓存: 修改后,强制刷新浏览器,并清除服务器缓存和CDN缓存。
- 文件检查: 如果问题依旧,直接在浏览器中访问图片的完整URL,检查文件是否存在和服务器目录权限是否正确。
- 代码审查: 如果图片能单独打开,但网页中不行,使用浏览器开发者工具检查是否有CSS样式裁剪了图片。
- 环境检查: 如果以上都正常,检查服务器PHP环境中的 GD库 是否支持。
按照这个流程,90%以上的图片显示问题都可以被解决,祝你成功!
