在我们操作网站时难免会操作失误,今天分享一个我遇到的问题,在wordpress安装插件误点了安装主题上传了插件安装包,导致安装失败,然后发现安装包到媒体里面去了,删不掉,删除的时候提示删除附件时发生错误。
我网上找了以下几种方法,用了最后这个方法解决了!
检查文件权限
通过 FTP 或者服务器文件管理器(如 cPanel 的文件管理器)访问你的网站文件。找到媒体文件所在的文件夹,通常是wp - content/uploads
。
查看这些文件和文件夹的权限。WordPress 文件和文件夹合适的权限设置一般是,文件夹为755
,文件为644
。如果权限设置错误,例如权限设置得过低(如400
),服务器进程(如运行 WordPress 的用户,可能是www - data
或者apache
)将无法对文件进行删除操作。
你可以尝试将文件权限修改为644
,文件夹权限修改为755
,然后再尝试在 WordPress 后台删除文件。但要注意,修改权限可能会带来安全风险,所以操作后要确保权限设置合理。
检查是否有进程占用文件
有时候,文件无法删除是因为有其他进程正在使用它。在 WordPress 中,可能是某个插件或者主题的脚本在引用这个文件。
你可以尝试暂时停用所有插件。在 WordPress 后台,依次进入 “插件”->“已安装的插件”,选择全部插件并停用。然后切换到默认主题(如 Twenty Twenty – Four),再尝试删除媒体文件。
如果文件可以删除了,那么说明是某个插件或者主题导致的问题。你可以逐个启用插件,每次启用后都尝试删除文件,以此来找出导致问题的插件或者主题。
检查数据库关联
WordPress 的媒体库信息存储在数据库中。当你上传文件时,相关信息会记录在wp_posts
和wp_postmeta
表中。
你可以使用 phpMyAdmin 等数据库管理工具来检查这些表。在wp_posts
表中,媒体文件对应的post_type
是attachment
。找到与你要删除的文件对应的记录,检查guid
(文件路径)等字段是否正确。
如果数据库记录存在错误,可能会导致文件无法正常删除。在备份数据库后,你可以尝试手动修改这些记录或者删除对应的记录行。不过,这种操作需要谨慎,因为错误的操作可能会导致媒体库功能紊乱或者其他数据问题。
使用插件辅助删除
有一些 WordPress 插件可以帮助你管理媒体文件并解决删除问题。例如,“Force Delete Attachments” 插件。安装并激活这个插件后,它可能能够帮助你强制删除那些无法正常删除的附件。不过,在使用插件之前,要确保从可靠的来源获取插件,并检查插件与你的 WordPress 版本是否兼容。
首先我在服务器中根据文件路径找到这个删不掉的文件,发现权限时644给,然后安装上面的方法给与www权限775,在去服务wp网站后台媒体删除这个安装包,还是提示 “删除附件时发生错误。”,
于是我接着关掉所有的插件和主题,在到媒体中删除,完美解决了。
再次大家会问为什么我不直接在服务器中直接删除这个文件,我尝试过,删除后在wp网站后台媒体里还是有这个文件,所有在服务器中直接删除是wp的记录还是在的。