第一步:检查最常见的原因(权限问题)
这是导致删除失败 超过80% 的原因。

(图片来源网络,侵删)
问题核心:你的网站服务器(Apache/Nginx)运行的用户(通常是 www-data 或 nobody),没有权限修改或删除 data 目录下的文件。
解决方案:
-
找到网站根目录:通过FTP或文件管理器,连接到你的网站服务器,找到织梦程序的根目录(
public_html或www)。 -
修改
data目录权限:
(图片来源网络,侵删)- 在根目录下,找到名为
data的文件夹。 - 右键点击它,选择“属性”或“权限”。
- 关键操作:将
data目录的权限设置为755或775。755是最安全的,适用于大部分虚拟主机环境。755不行,可以尝试775。
- 非常重要:设置目录权限后,通常会弹出一个选项,询问是否“将更改应用于此对象、所有子对象和所有对象”。请务必勾选这个选项! 这样才能把权限应用到
data目录下的所有文件和子文件夹。
- 在根目录下,找到名为
-
修改
dede目录权限(可选但推荐):dede是织梦的后台管理目录,里面也缓存了一些数据。- 同样地,将
dede目录的权限也设置为755,并应用到其所有子对象。
-
修改缓存目录权限:
- 在
data目录下,找到cache和sessions这两个文件夹。 - 将它们的权限也设置为
755。
- 在
完成以上操作后,刷新你的织梦后台,再次尝试删除文章,很多时候问题就已经解决了。
第二步:检查文件/目录是否被占用
织梦在删除文章时,需要先删除一些关联文件(如缩略图、附件),如果这些文件正在被其他程序使用或被锁定,就会导致删除失败。

(图片来源网络,侵删)
解决方案:
-
删除文章前,先删除附件:
- 在删除文章前,先进入文章的编辑页面,检查文章内容里的图片或附件。
- 将这些附件从编辑器中移除,并保存文章。
- 然后再去文章列表里删除这篇文章,这样可以避免因附件文件被锁定而导致的失败。
-
检查文件是否真的存在:
- 通过FTP检查文章提到的附件路径(
/uploads/allimg/...)是否存在,如果文件已经不存在,织梦在删除时就会报错。
- 通过FTP检查文章提到的附件路径(
第三步:使用织梦的“一键更新”功能
织梦的后台有一个非常强大的“一键更新”功能,它可以修复很多因数据不一致或缓存问题导致的奇怪错误。
解决方案:
- 登录织梦后台。
- 在顶部菜单栏找到 “系统” -> “一键更新网站”。
- 在打开的页面中,不要急着点击“开始更新”。
- 先勾选 “更新系统缓存” 和 “更新数据库缓存”。
- 然后点击 “开始更新”。
- 等待更新完成后,再尝试删除文章。
第四步:检查数据库表是否损坏
如果以上方法都无效,可能是织梦的数据库表出现了轻微的损坏。
解决方案:
- 登录你的网站数据库管理工具(如
phpMyAdmin)。 - 找到你的织梦数据库。
- 在左侧的列表中,找到
#@__archives这个表(这是存储文章内容的表)。 - 在
#@__archives表上,点击 “检查表” (Check table)。 - 如果检查结果显示有错误,再点击 “修复表” (Repair table)。
- 同样地,也可以检查一下
#@__arctiny(文章简略表)和#@__addonarticle(文章附加表,如果开启了文章模型)。
第五步:终极解决方案 - 手动删除
如果所有自动化方法都失败了,你可以通过手动操作来彻底删除这篇文章,这分为两步:删除数据库记录 和 删除物理文件。
⚠️ 警告:此操作有风险,请务必先备份数据库和网站文件!
第一步:手动删除数据库记录
-
登录
phpMyAdmin,选择你的织梦数据库。 -
点击顶部的 “SQL” 选项卡,进入命令行模式。
-
执行以下SQL命令(请将
123替换成你要删除的文章ID):-- 1. 删除文章主表记录 DELETE FROM `#@__archives` WHERE id = 123; -- 2. 删除文章简略表记录 DELETE FROM `#@__arctiny` WHERE id = 123; -- 3. 删除文章附加表记录(如果你的文章有自定义字段,这一步很重要) DELETE FROM `#@__addonarticle` WHERE aid = 123; -- 4. 删除评论(如果开启了评论功能) DELETE FROM `#@__feedback` WHERE aid = 123; -- 5. 删除标签关系 DELETE FROM `#@__taglist` WHERE aid = 123;
执行完这些命令后,文章在数据库中的所有痕迹就都被清除了。
第二步:手动删除物理文件
- 通过FTP找到文章的缩略图和附件,它们的路径通常存储在数据库的
#@__archives表的litpic字段和body字段里,你需要手动去FTP上根据路径删除这些文件。 - 文章的静态HTML文件路径通常在
#@__arctiny表的redirecturl字段或#@__archives表的redirecturl字段,如果开启了生成HTML,你还需要去/html目录下找到对应的HTML文件并删除。
总结与排查顺序
请按照以下顺序进行排查,效率最高:
- 首选方案:修改
data目录权限为755并应用到所有子对象。 (解决80%的问题) - 次选方案:使用后台“一键更新”功能,更新缓存。
- 再次方案:删除文章前,先手动移除其附件。
- 进阶方案:使用
phpMyAdmin检查并修复#@__archives等数据表。 - 最终方案:手动在数据库中删除记录,并在FTP中删除文件。
希望这些步骤能帮助你成功解决问题!如果仍然不行,请提供更具体的错误提示信息,这样我可以给出更精确的判断。
