WordPress上传文件提示“文件是空的。请上传有内容的文件。这个错误…”
编辑:狂族晨曦 来源:WordPress技巧 日期:2016-10-26 阅读: 6,621 次 4 条评论 » 百度已收录
先森拿到了腾讯云的学生机,赶紧用nginx搭建好了WordPress的环境。今天试着导入WordPress的导出文件时,竟然遇到了“文件是空的。请上传有内容的文件。这个错误也有可能是因为您的php.ini禁止了上传,或其中post_max_size的值小于upload_max_filesize的值。”的错误。
文件是空的。请上传有内容...
下面就说说解决过程。
检查
错误提醒中也说了“可能是因为您的php.ini禁止了上传,或其中post_max_size的值小于upload_max_filesize的值”,所以我们首先要将这三条配置检查一下,做一个排除。如果能解决问题当然好,不能的话也明确了错误目标。
1.排除是否禁止了上传
php.ini的默认位置在/etc目录下,编辑打开,查看是否禁用了上传。
file_uploads = On
是否允许HTTP文件上传。默认值为On允许HTTP文件上传,若设置为Off当然就不能上传了。
2.排除POST上传大小设置
post_max_size = 8M
post 提交数据时的大小,默认值 8 MB,但你还可以增加它。此设置还会影响文件上传。上传大文件时,该值必须大于 upload_max_filesize。
3.排除最大可上传文件大小
upload_max_filesize = 2M
上传文件时最大限制,默认值为2M。
如果和先森一样,刚安装还没有做什么修改,那上面的三样应该都是默认值,也就是问题不出在php.ini的配置上,那么接着往下看。
DeBUG寻找错误原因
先森也懒得去找php的错误日志了,直接开启了php.ini中的错误提醒。将Off改为On则为开启了。开启后,则在屏幕上可以显示错误
display_errors = On
修改配置之后,重启php。
service php-fpm restart
这时候再重新上传,就显示出来了一条错误:
Fatal error: Class 'DOMDocument' not found in /usr/local/nginx/html/wp-content/plugins/wordpress-importer/parsers.php on line 61
致命错误:在wordpress的程序代码中没有发现“DOMDocument”类。
虽然不清楚是什么意思,但是先打开文件,看看第61行是什么再说吧。
$dom = new DOMDocument;
好吧,还是不清楚是怎么回事。所以直接拿着错误提醒进行百度,强行看了两篇英文贴找到了解决方法,原来是缺少php组件。yum安装一下即可。
yum install -y php-xml
原来是无法识别xml文件,wordpress导出的文件就是xml格式的。
安装之后还需要重启php:
service php-fpm restart
再次去WordPress后台导入文章,则顺利上传了。
历史上的今天:
- 2015: 【先森有友】致少年(2)
- 2015: 第十届全国高职高专“发明杯”大赛决赛在山东济宁落下帷幕(0)
转载请注明出处来自https://www.capjsj.cn/php_ini.html
来看看哦。
网站速度很快啊。
不懂!!
非常感谢!遇到了和您一样的问题!