最新消息:

dz或dx批量上传图片或者附件无法使用解决大全

技术杂烩 李金龙 3983浏览 0评论

最近自己用DZ和DX创建论坛,但是遇到了一个问题就是图片或者附件无法批量上传,或者批量上传的时候是空的,落水鱼我从网上找了很多方法,看到了一个朋友总结的,感觉不错,就给大家分享一下:
一、我们先确定一下普通上传是否正常,如果普通上传也不行,则按官方提供的帮助文档排查原因,如下:
1、服务器磁盘或购买的虚拟空间满了
这种情况常常表现为前台提交表单成功,附件并没有上传上去,附件目录里刚刚上传的附件的大小为 0。
解决方法:清理磁盘空间。
2、附件目录没有写权限

上传附件的时候要求附件目录有写权限,否则上传失败。
解决方法:
1)如果服务器是 Linux 主机,请将附件目录的权限设置为 777,并将权限继承到附件目录的下级目录;
2)如果服务器是 Windows 主机,请设置附件目录 IIS 来宾账户(或者运行这个站点的 IIS 账号)写权限,并继承到附件目录的下级目录。
至于权限的设置大家可以参考《如何设置Discuz、ucenter、uchome和Discuz! X的文件目录权限》: http://www.lijinlong.com/jishu/682
设置权限的详细方法大家可以参考《linux服务器和Windows服务器文件目录权限修改方法》:http://www.lijinlong.com/seo/735
3、系统临时目录满了
在 php.ini 中没有设置上传临时目录的情况下,系统会将上传到服务器的文件放在系统的临时目录里(Windows 服务器的系统临时目录是 c:\Windows\TEMP;Linux 的系统临时目录是/tmp),这个目录满了,上传文件就会失败。
解决方法:将系统临时目录清理一下。
4、系统临时目录的权限有问题
这种情况主要发生在 Windows 主机上。一般情况下,不用另外设置系统临时目录的权限。特别情况下需要设置 IIS 来宾账号(或运行IIS的账号)对系统临时目录有写权限
5、PHP 临时目录的问题
在 php.ini 中,可以通过 upload_tmp_dir 的值,来设定通过PHP程序上传的文件的临时目录,如果这个目录满了或者权限有问题,也会导致上传附件不成功。
解决方法:
1)如果设置的临时目录满了,清空一下这个目录
2)设置临时目录运行 IIS 来宾账号(或运行IIS的账号)写权限
6、上传的附件大小超过了系统允许的附件大小或者超出了允许提交表单的大小

服务器允许上传的附件大小和允许提交表单的大小分别是通过php.ini中的upload_max_filesize、post_max_size设定的,默认大小分别是 2M、8M,如果上传的附件的大小和表单的大小超过了这两个参数设置的大小,就会出现上传附件不成功的情况。
解决办法:适当改大upload_max_filesize这个参数的值(如果上传的附件超过 6M,建议使用 ftp 或者其他方式上传),然后重新启动一下 web 服务器软件。
7、空间商限制了目录属性
有些空间限制了目录属性,导致在附件目录下建立子目录时失败
8、Apache配置文件中设置了 open_basedir
如果您的 web 服务器是 Apache 的话,可以在的配置文件里指定 open_basedir 参数来限制 Apache 能够访问的目录,如果指定了这个参数,可能导致上传附件不成功。
解决办法:将系统的临时目录或者 php.ini 中 upload_tmp_dir 参数设置的目录、附件目录添加到 open_basedir 设置中或者将这个参数注释掉(慎用),然后重新启动 Apache 。

二、批量上传,除上述情况需要检查外,还留意一下以下的这些情况是否存在:
1、下面是一些设置方面的原因
(1)、附件上传在后台的相关设置,包括会员组上传权限设置、版块上传权限设置以及全局附件设置三大块。
请登陆这些相关页面检查设置。包括上传大小、上传格式类型限制、远程附件等等。

(2)、登陆UC后台查看应用配置以及论坛的config.inc.php配置,是否通信成功,有无其它问题(如头像是否能正常上传等,会员注册登陆是否正常等),有可能解决了这些问题,批量上传问题也迎刃而解。
解决成功案例:http://www.discuz.net/thread-1565634-1-1.html
http://www.discuz.net/thread-1578874-1-1.html
2、下面是文件缺失、损坏或不完整、版本不一致的原因
(1)、检查FTP上传软件,是否设置了二进制上传;如果不是二进制上传,文件上传可能会不完整或损坏。
(2)、登陆论坛后台,文件校验,看看是否有不明确的文件被修改操作。
(3)、后台,文件权限检查,查看一下是否正常。
(4)、独立主机上直接移动文件导致的文件或目录无权限。
(5)、搬家、升级过程中没有严格按照官方说明文档操作。导致版本不一致、文件目录无权限或者丢失文件等等。

3、插件或模板的原因
(1)、尝试关闭插件,更新缓存
(2)、尝试恢复默认模板,更新缓存
(3)、检查是否添加了广告代码,导致代码冲突

4、换台电脑或换个浏览器,看看是不是本地电脑导致FLASH不能加载的原因。

三、顺便再说句,论坛后台自带的工具:文件校验、文件权限检查、数据库校验、数据库优化、更新缓存,以及UCenter后台的应用配置。这些工具是遇见问题后首先想到要使用的检测排查工具。

转载请注明: » dz或dx批量上传图片或者附件无法使用解决大全

发表我的评论
取消评论

表情

网友最新评论 (3)

  1. 还在玩DZ啊,看来比较有闲功夫呢
    yesureadmin9年前 (2010-12-29)
  2. 过来看看了
    晴天9年前 (2010-12-30)
  3. 博主新年快乐啊
    博客之家9年前 (2011-01-01)