排查思路:从最常见、最简单的原因开始
第一步:检查图片是否存在
这是最基本的一步,在后台编辑文章时,插入图片后,请直接点击图片,在新标签页中打开图片的URL。

(图片来源网络,侵删)
- 如果图片能正常打开:说明图片文件本身是存在的,问题出在“如何显示”这个环节,请继续往下看。
- 如果图片无法打开(404 Not Found错误):说明服务器找不到这个图片文件,请重点检查 第五步:文件上传目录权限 和 第六步:伪静态规则。
第二步:检查后台核心设置 - 站点参数
这是最常见的原因之一,织梦的图片路径是动态生成的,如果站点信息配置错误,所有图片路径都会出错。
-
登录织梦后台。
-
进入 【系统】 -> 【系统基本参数】。
-
在左侧菜单选择 【站点信息】。
(图片来源网络,侵删) -
重点检查以下几个参数:
- 站点根网址:必须以
http://或https://开头,并且以- 正确示例:
http://www.yourdomain.com/ - 错误示例:
www.yourdomain.com(缺少协议) 或http://www.yourdomain.com(缺少结尾的斜杠)
- 正确示例:
- 站点路径:这是网站在服务器上的物理路径,必须以 开头和结尾。
- 正确示例:
/home/wwwroot/yourdomain/ - 错误示例:
home/wwwroot/yourdomain(缺少开头的斜杠)
- 正确示例:
- 站点根网址:必须以
-
检查完毕后,务必点击页面底部的 【保存】 按钮。
第三步:检查图片保存目录
织梦默认将上传的图片保存在 /uploads/ 目录下。
- 通过FTP或服务器的文件管理器,进入你的网站根目录。
- 检查是否存在
uploads文件夹。 - 进入
uploads文件夹,里面应该有按年月(如2025/07)分类的子文件夹,以及你上传的图片。 - 确认图片确实在你预期的文件夹里,如果图片上传到了其他地方,可能是你的上传目录设置被修改过。
第四步:检查文章内容中的图片路径
问题出在手动编辑代码或从其他地方复制内容时。

(图片来源网络,侵删)
- 在后台找到一篇不显示图片的文章,点击 【编辑】。
- 切换到 【HTML源码】 模式。
- 查看图片标签
<img>的src属性。- 检查路径是否完整:
src属性应该是完整的、以你设置的“站点根网址”开头的绝对路径,http://www.yourdomain.com/uploads/2025/07/image.jpg。 - 检查路径是否错误:如果路径是相对路径(如
../uploads/...)或者指向了错误的域名,就需要手动修正它,通过织梦编辑器正常插入的图片,路径都是自动生成的,这里主要是排查手动修改的情况。
- 检查路径是否完整:
第五步:检查文件和目录权限
这是服务器层面的一个常见问题,如果权限设置不当,服务器无法读写或执行文件,自然就无法显示。
- 通过FTP或服务器控制台的文件管理器,选中以下目录和文件:
- 网站根目录
/data/目录(非常重要,存放配置文件)/uploads/目录及其所有子目录/templets/目录/include/目录/dede/目录(后台管理目录)/plus/目录
- 将它们的权限设置为 755 (对于目录) 或 644 (对于文件)。
- Linux/Unix服务器:这是最标准的设置,755表示所有者有读写执行权限,组用户和其他用户有读和执行权限,644表示所有者有读写权限,组用户和其他用户只有读权限。
- Windows服务器:确保IIS或Apache用户(如
IIS_IUSRS或Users)对这些目录有“读取和执行”、“列出文件夹内容”、“读取”的权限。
注意:/data/ 目录下的 config.cache.inc.php 文件权限建议设置为 644,以确保配置文件安全。
第六步:检查伪静态规则
如果你的网站开启了伪静态(URL重写),图片路径也可能被错误地重写,导致404错误。
-
确认你的网站是否使用了伪静态,如果你的URL是
http://www.yourdomain.com/a/1.html这种形式,就是开启了伪静态。 -
检查你的伪静态规则文件是否正确。
- Apache服务器:规则通常在网站根目录下的
.htaccess文件中。 - Nginx服务器:规则通常在Nginx的虚拟主机配置文件中。
- Apache服务器:规则通常在网站根目录下的
-
一个常见的错误是,伪静态规则只处理了
html、htm等页面,但没有正确处理jpg、png、gif等静态资源的请求,检查你的规则是否包含了静态资源的处理,或者是否对静态资源跳过了重写规则。- Apache
.htaccess示例:确保规则中类似RewriteRule ^(.*).html$ /$1.html [L]的规则不会影响到图片,规则文件的开头会有RewriteEngine On,后面跟着一系列RewriteCond和RewriteRule。 - Nginx 配置示例:确保你的
location块中,处理图片等静态资源的规则在处理PHP或HTML规则的前面。
# 正确的顺序示例 location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ { root /home/wwwroot/yourdomain; expires 7d; } location / { try_files $uri $uri/ /index.php?$query_string; } - Apache
-
修改伪静态规则后,需要重启Nginx/Apache服务才能生效。
第七步:检查模板调用标签
如果只是某个特定页面或栏目不显示图片,可能是模板文件中的调用标签有问题。
- 进入 【模板】 -> 【默认模板管理】**。
- 找到对应页面(如首页、列表页、文章页)的模板文件。
- 检查图片调用的标签,
- 调用文章缩略图:
[field:picname/] - 调用文章内容中的图片:
[field:body/](这个标签会输出完整的HTML,通常没问题)
- 调用文章缩略图:
- 确保这些标签没有被错误地修改或删除,可以尝试更换一个默认的模板文件,看问题是否解决。
总结与终极建议
按照以上步骤,从 后台设置 -> 文件路径 -> 服务器权限 -> 伪静态规则 的顺序逐一排查,90%以上的图片不显示问题都能得到解决。
如果所有方法都试过了问题依旧,可以考虑以下“终极手段”:
- 重新上传核心文件:上传的织梦程序文件可能损坏,从官方下载一个对应版本的织梦程序包,只覆盖
/include/、/dede/、/plus/这几个核心目录,注意不要覆盖/data/目录和/uploads/目录,以免丢失你的数据和上传的文件。 - 查看服务器错误日志:联系你的主机服务商,请求查看Web服务器(如Apache的
error_log或Nginx的error.log)的错误日志,日志中会明确指出404错误的具体原因,是找不到文件还是权限问题,这能为你提供最直接的线索。
希望这些详细的步骤能帮助你快速解决问题!
