织梦搬家首页图片为何不显示?

99ANYc3cd6
预计阅读时长 11 分钟
位置: 首页 织梦建站 正文

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

织梦搬家首页图片不显示
(图片来源网络,侵删)

核心排查思路:

找到所有引用图片的地方,检查它们的路径是否指向了你现在网站存放的正确位置。


详细排查步骤(请按顺序操作)

第一步:检查图片文件是否真的存在

这是最基本的一步,但很多人会忽略。

  1. 通过FTP工具或你的服务器控制面板文件管理器,登录你的网站根目录。
  2. 找到首页模板文件,通常是 /templets/default/index.htm
  3. 在首页模板中,找到一张不显示的图片,<img src="/uploads/allimg/230101/1-2301011F3090-L.jpg" />
  4. 然后去你的网站根目录下,检查这个路径 /uploads/allimg/230101/1-2301011F3090-L.jpg 下的图片文件是否真的存在。
    • 如果文件不存在:说明你在搬家过程中漏传了 uploads 文件夹,或者上传时出错了,请重新上传 uploads 文件夹。
    • 如果文件存在:那么问题就出在路径引用上,请继续往下看。

第二步:检查网站根目录和后台设置的“站点路径”

这是最常见的原因,织梦系统中的很多路径(如CSS、JS、图片等)是相对于“站点根目录”的。

  1. 登录织梦后台你的域名/dede/
  2. 进入“系统” -> “系统基本参数”
  3. 在左侧菜单选择“核心设置”。
  4. 找到 “站点根目录” 这一项。
    • 检查这里的值是否正确,它应该是你的网站在服务器上的完整物理路径,/home/wwwroot/你的网站文件夹名/
    • 如果路径不正确,请修改为正确的路径,然后点击“保存”。
    • 特别注意:不要在路径末尾加斜杠 ,保持为 /home/wwwroot/你的网站文件夹名 即可。

第三步:检查后台的“网站网址”

“网站网址”决定了所有以绝对路径(以 开头)开头的链接和图片的访问地址。

织梦搬家首页图片不显示
(图片来源网络,侵删)
  1. 仍在 “系统基本参数” -> “核心设置” 中。
  2. 找到 “网站网址” 这一项。
    • 检查这里的值是否正确,它必须是你的网站完整的、可访问的域名,http://www.yourdomain.comhttps://www.yourdomain.com
    • 确保没有多余的斜杠或空格,并且协议(http/https)正确。
    • 修改后点击“保存”。

第四步:检查数据库中的路径

一些图片路径是直接保存在数据库里的,比如文章内容、产品描述等,搬家后,这些硬编码的旧路径也会失效。

  1. 登录你的数据库管理工具(如 phpMyAdmin)。

  2. 选择你的织梦网站数据库。

  3. 执行以下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 '%旧域名%';
  4. 如果查询结果中有数据,说明数据库里确实存有旧路径,你需要执行更新语句来替换它们。

    -- 替换文章内容中的旧域名
    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)里直接写死域名或路径。

  1. 用FTP工具下载你的首页模板 /templets/default/index.htm
  2. 用代码编辑器(如VS Code, Sublime Text, Notepad++)打开它。
  3. 搜索文件内容,看是否包含你的 旧域名 或旧的 绝对路径
  4. 如果找到,将其修改为相对路径(如 /uploads/...)或使用织梦的标签 {dede:global.cfg_basehost/} 来动态获取网站根目录。

第六步:清除浏览器缓存和织梦缓存

  1. 清除浏览器缓存:按 Ctrl + F5(或 Cmd + Shift + R)强制刷新浏览器页面,有时候浏览器缓存了旧的页面。
  2. 清除织梦缓存
    • 登录织梦后台。
    • 进入 “系统” -> “一键更新中心”
    • 点击右上角的 “更新系统缓存” 按钮。
    • 有时也需要更新首页,点击 “更新主页HTML”

总结与操作顺序建议

按照以下顺序操作,可以高效地解决问题:

  1. 检查文件:确认 uploads 等文件夹和图片文件是否已正确上传到服务器。
  2. 检查后台设置:登录后台,检查并修正 “站点根目录”“网站网址” 这两个核心参数。
  3. 清除缓存:在后台执行 “更新系统缓存”“更新主页HTML”
  4. 刷新浏览器:按 Ctrl + F5 强制刷新首页。
  5. 检查数据库:如果图片还不显示,再考虑使用SQL语句检查并替换数据库中的旧路径。
  6. 检查模板:如果问题依旧,再手动检查模板文件本身。

通常情况下,完成 第1、2、3步 就能解决大部分问题了,祝你顺利解决问题!

-- 展开阅读全文 --
头像
C语言如何打出Hello World?
« 上一篇 前天
dede织梦html手机模板怎么适配手机?
下一篇 » 前天

相关文章

取消
微信二维码
支付宝二维码

目录[+]