WordPress媒体库上传错误的解决方案

2024年1月17日 760点热度 0人点赞 0条评论

最近个人博客网站通过媒体库上传照片的时候,每次都会出现一个错误:“从服务器收到预料之外的响应。此文件可能已被成功上传。请检查媒体库或刷新本页”。上传的状态显示100%,但是刷新媒体库却找不到新上传的文件,后台登录uploads目录也找不到,所以应该是上传失败了。

谷歌了一下,发现所有的答案都指向php和nginx配置的参数不对。于是按照如下的步骤对参数进行了设置:

1、修改php.ini配置文件 upload_max_filesize、post_max_size、memory_limit。

查找 php.ini 的位置

使用命令:php –ini

2、此时再上传如果还是提示同样的错误,可能是因为nginx还限制了请求体大小,需要在nginx的配置文件中添加:

client_max_body_size 50m;

3、此时再上传如果是提示文件是不支持的类型,因为安全原因不能上传此后缀名的文件。此时可修改wp-config.php文件,增加如下行:

define( ‘ALLOW_UNFILTERED_UPLOADS’, true);

完成了上述的步骤,重新upload,结果还是同样的错误,这会是什么原因呢?我于是登录WordPress服务器后台,进入wp-content/uploads目录,发现这个目录下多了一个wpcode目录:

# cd wp-content/uploads/
# ll
总用量 12
drwxr-xr-x 4 nginx nginx 4096 1月   9 02:17 2023
drwxr-xr-x 3 nginx nginx 4096 1月   9 02:17 2024
drwxr-xr-x 3 nginx nginx 4096 1月  12 11:07 wpcode

进入到这个目录再看个究竟。。。

# cd wpcode
# find
.
./cache
./cache/library
./cache/library/index.html
./cache/library/snippets.json
./cache/docs.json
./cache/index.html
./index.html

发现这个目录里有个cache目录。难道这里记录了我以前的错误状态无法恢复导致现在所有的upload都不能成功?不管它三七二十一,先把这个cache清掉再说。。。为了保险起见,先不直接删除,rename一下。。。

# cd ..
# mv wpcode wpcode--
# ll
总用量 12
drwxr-xr-x 4 nginx nginx 4096 1月   9 02:17 2023
drwxr-xr-x 3 nginx nginx 4096 1月   9 02:17 2024
drwxr-xr-x 3 nginx nginx 4096 1月  12 11:07 wpcode--

然后再来试一下上传照片,成功了。果然是因为cache里的错误状态无法恢复导致的锅。至于cache里的文件都啥内容,也懒得去分析了。有高手知道的,可以告诉我一下 :)

予人玫瑰,手有余香。如果您觉得本文对您有帮助,请点赞或打赏。

文章评论

您需要 登录 之后才可以评论