问题的根源几乎都指向 路径错误,当你把网站从一台电脑(或一个服务器目录)移动到另一个位置时,图片的引用路径可能还指向旧的、不存在的地址。

(图片来源网络,侵删)
核心排查思路:
找到所有引用图片的地方,检查它们的路径是否指向了你现在网站存放的正确位置。
详细排查步骤(请按顺序操作)
第一步:检查图片文件是否真的存在
这是最基本的一步,但很多人会忽略。
- 通过FTP工具或你的服务器控制面板文件管理器,登录你的网站根目录。
- 找到首页模板文件,通常是
/templets/default/index.htm。 - 在首页模板中,找到一张不显示的图片,
<img src="/uploads/allimg/230101/1-2301011F3090-L.jpg" />。 - 然后去你的网站根目录下,检查这个路径
/uploads/allimg/230101/1-2301011F3090-L.jpg下的图片文件是否真的存在。- 如果文件不存在:说明你在搬家过程中漏传了
uploads文件夹,或者上传时出错了,请重新上传uploads文件夹。 - 如果文件存在:那么问题就出在路径引用上,请继续往下看。
- 如果文件不存在:说明你在搬家过程中漏传了
第二步:检查网站根目录和后台设置的“站点路径”
这是最常见的原因,织梦系统中的很多路径(如CSS、JS、图片等)是相对于“站点根目录”的。
- 登录织梦后台:
你的域名/dede/ - 进入“系统” -> “系统基本参数”。
- 在左侧菜单选择“核心设置”。
- 找到 “站点根目录” 这一项。
- 检查这里的值是否正确,它应该是你的网站在服务器上的完整物理路径,
/home/wwwroot/你的网站文件夹名/。 - 如果路径不正确,请修改为正确的路径,然后点击“保存”。
- 特别注意:不要在路径末尾加斜杠 ,保持为
/home/wwwroot/你的网站文件夹名即可。
- 检查这里的值是否正确,它应该是你的网站在服务器上的完整物理路径,
第三步:检查后台的“网站网址”
“网站网址”决定了所有以绝对路径(以 开头)开头的链接和图片的访问地址。

(图片来源网络,侵删)
- 仍在 “系统基本参数” -> “核心设置” 中。
- 找到 “网站网址” 这一项。
- 检查这里的值是否正确,它必须是你的网站完整的、可访问的域名,
http://www.yourdomain.com或https://www.yourdomain.com。 - 确保没有多余的斜杠或空格,并且协议(http/https)正确。
- 修改后点击“保存”。
- 检查这里的值是否正确,它必须是你的网站完整的、可访问的域名,
第四步:检查数据库中的路径
一些图片路径是直接保存在数据库里的,比如文章内容、产品描述等,搬家后,这些硬编码的旧路径也会失效。
-
登录你的数据库管理工具(如 phpMyAdmin)。
-
选择你的织梦网站数据库。
-
执行以下SQL语句来检查和替换。请务必将
旧域名和新域名替换成你自己的实际域名。
(图片来源网络,侵删)-- 检查 `#@__archives` 表(文章表)中的 `body` 字段 SELECT body FROM `#@__archives` WHERE body LIKE '%旧域名%'; -- 检查 `#@__addonarticle` 表(文章附加表)中的 `body` 字段 SELECT body FROM `#@__addonarticle` WHERE body LIKE '%旧域名%'; -- 检查 `#@__arctype` 表(栏目表)中的 `description` 和 `content` 字段 SELECT description, content FROM `#@__arctype` WHERE description LIKE '%旧域名%' OR content LIKE '%旧域名%';
-
如果查询结果中有数据,说明数据库里确实存有旧路径,你需要执行更新语句来替换它们。
-- 替换文章内容中的旧域名 UPDATE `#@__archives` SET body = REPLACE(body, 'http://旧域名', 'http://新域名'); -- 替换文章附加内容中的旧域名 UPDATE `#@__addonarticle` SET body = REPLACE(body, 'http://旧域名', 'http://新域名'); -- 替换栏目简介和内容中的旧域名 UPDATE `#@__arctype` SET description = REPLACE(description, 'http://旧域名', 'http://新域名'); UPDATE `#@__arctype` SET content = REPLACE(content, 'http://旧域名', 'http://新域名');
注意:
#@__是织梦数据库表前缀,如果你的前缀不是dede_,请自行替换。- 操作数据库有风险,强烈建议在操作前先备份数据库!
第五步:检查模板文件中的硬编码路径
有些时候,开发者会在模板文件(.htm)里直接写死域名或路径。
- 用FTP工具下载你的首页模板
/templets/default/index.htm。 - 用代码编辑器(如VS Code, Sublime Text, Notepad++)打开它。
- 搜索文件内容,看是否包含你的 旧域名 或旧的 绝对路径。
- 如果找到,将其修改为相对路径(如
/uploads/...)或使用织梦的标签{dede:global.cfg_basehost/}来动态获取网站根目录。
第六步:清除浏览器缓存和织梦缓存
- 清除浏览器缓存:按
Ctrl + F5(或Cmd + Shift + R)强制刷新浏览器页面,有时候浏览器缓存了旧的页面。 - 清除织梦缓存:
- 登录织梦后台。
- 进入 “系统” -> “一键更新中心”。
- 点击右上角的 “更新系统缓存” 按钮。
- 有时也需要更新首页,点击 “更新主页HTML”。
总结与操作顺序建议
按照以下顺序操作,可以高效地解决问题:
- 检查文件:确认
uploads等文件夹和图片文件是否已正确上传到服务器。 - 检查后台设置:登录后台,检查并修正 “站点根目录” 和 “网站网址” 这两个核心参数。
- 清除缓存:在后台执行 “更新系统缓存” 和 “更新主页HTML”。
- 刷新浏览器:按
Ctrl + F5强制刷新首页。 - 检查数据库:如果图片还不显示,再考虑使用SQL语句检查并替换数据库中的旧路径。
- 检查模板:如果问题依旧,再手动检查模板文件本身。
通常情况下,完成 第1、2、3步 就能解决大部分问题了,祝你顺利解决问题!
