个.

注意:很多人遇到修改php.ini后重应WEB服务后仍然不能生效.这种情况应该先确认一下所改的php.ini是不是当前PHP所使用的.
您可以在WEB目录下建立一个php文件,内容很简单就一句话
<?php
   phpinfo();
?>
浏览器中查看此文件, Configuration File (php.ini) Path 此项对应的就是您的PHP当前正在使用的php.ini文件了.

,我们来做一个算术问题,1M=1024KB,1KB=1024B,那么16M=16*1024*1024=16777216,当你只做了前两部,而设置附件大小超过16M的时候程序就返回并保存这个数值。按照论坛上一些高人提供的办法,我们将cdb_usergroups数据表maxattachsize字段改为int类型或者bigint类型,加大长度值便可以解决这个问题,我采用的是int,长度为10,测试通过。具体修改办法就不再细述,采用SQL语句和PHPMYADMIN工具都可以,提供SQL语句如下:

ALTER TABLE `cdb_usergroups` CHANGE `maxattachsize` `maxattachsize` INT(10) UNSIGNED DEFAULT '0'

最后操作完毕,考虑到其他因素的影响,比如网页超时时间、网络速度的影响,你可以自己测试一下设置一个比较合理的附件大小,我把我的测试结果和网络情况提供给大家做一个参考。目前我测试上传最大的附件在23M的样子,寝室带宽是1M,7台电脑用,偶尔还有电脑在下东西,我觉得如果有好的网络,这个附件大小还有很大的发展空间,希望大家也能把自己的测试结果贴出来,让其他朋友们少走一些弯路。另外,这里提到的是有服务器权限增加附件大小的办法,如果没有服务器权限,建议可以考虑fs2you文件上传控件,但是这个控件也不是很好,传上超过10M的单个文件会被当作危险文件而被很快删除掉,所以单个文件最好控制在10M之内。

23M附件成功上传证明:
http://www.21java.com/viewthread.php?tid=962
http://www.21java.com/viewthread.php?tid=960

有关DZ的问题,欢迎大家和我讨论, QQ:331004479

今天一个朋友加我讨论dz大附件上传的问题,又有一些心得,传上来和大家分享:

1:max_execution_time
变量max_execution_time设置了在强制终止脚本前PHP等待脚本执行完毕的时间,此时间以秒计算。当脚本进入了一个无限循环状态 时此变量非常有用。然而,当存在一个需要很长时间完成的合法活动时(例如上传大型文件),这项功能也会导致操作失败。在这样的情况下必须考虑将此变量值增 加,以避免PHP在脚本正在执行某些重要过程的时候将脚本关闭。
max_execution_time = 90
2:file_uploads = On
3:upload_max_filesize = 2M
4:post_max_size
同表单提交相关的一个变量是post_max_size,它将控制在采用POST方法进行一次表单提交中PHP所能够接收的最大数据量。似乎不大 可能需要将默认的8 MB改得更大。相反,应当适当将其降到更为实际的数值。但如果希望使用PHP文件上传功能,则需要将此值改为比upload_max_filesize还 要大。
post_max_size = 8M 
5:max_input_time 网中人;
此变量可以以秒为单位对通过POST、GET以及PUT方式接收数据时间进行限制。如果应用程序所运行环境处在低速链路上,则需要增加此值以适应接收数据所需的更多时间。
max_input_time = 90
6:memory_limit
memory_limit = 8M 
为了避免正在运行的脚本大量使用系统可用内存,PHP允许定义内存使用限额。通过memory_limit变量来指定单个脚本程序可以使用的最大内存容量
变量memory_limit的值应当适当大于post_max_size的值
如何实现php大文件上传: 
一个简单的配置例子,大家可以参考下:
1:打开php.ini,首先找到 
file_uploads = on ;是否允许通过HTTP上传文件的开关。默认为ON即是开
upload_tmp_dir ;文件上传至服务器上存储临时文件的地方,如果没指定就会用系统默认的临时文件夹
upload_max_filesize = 8m ;望文生意,即允许上传文件大小的最大值。默认为2M 
post_max_size = 8m ;指通过表单POST给PHP的所能接收的最大值,包括表单里的所有值。默认为8M 
一般地,设置好上述四个参数后,上传<=8M的文件是不成问题,在网络正常的情况下。 
但如果要上传>8M的大体积文件,只设置上述四项还一定能行的通。除非你的网络真有100M/S的上传高速,否则你还得关心关心下面的参数 
max_execution_time = 600 ;每个PHP页面运行的最大时间值(秒),默认30秒 
max_input_time = 600 ;每个PHP页面接收数据所需的最大时间,默认60秒 
memory_limit = 8m ;每个PHP页面所吃掉的最大内存,默认8M 
把上述参数修改后,在网络所允许的正常情况下,就可以上传大体积文件了

[ 本帖最后由 niitstar 于 2008-9-29 22:52 编辑 ]

<ignore_js_op>

未命名.jpg (165.39 KB, 下载次数: 45)

彻底解决DZ大附件上传问题的更多相关文章

  1. web大附件上传,支持断点续传

    一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...

  2. java大附件上传,支持断点续传

    一. 功能性需求与非功能性需求 要求操作便利,一次选择多个文件和文件夹进行上传:支持PC端全平台操作系统,Windows,Linux,Mac 支持文件和文件夹的批量下载,断点续传.刷新页面后继续传输. ...

  3. 解决PHP大文件上传问题

    PHP大文件上传问题    今天负责创业计划大赛的老师问我作品上报系统上传不了大文件,我当时纳闷了,做的时候没限制上传文件的大小阿,怎么会传不了呢,自己亲自体验了番,果然不 行,想了好一会儿才有点眉目 ...

  4. php大附件上传,支持断点续传

    前段时间做视频上传业务,通过网页上传视频到服务器. 视频大小 小则几十M,大则 1G+,以一般的HTTP请求发送数据的方式的话,会遇到的问题:1,文件过大,超出服务端的请求大小限制:2,请求时间过长, ...

  5. B/S大附件上传,支持断点续传

    核心原理: 该项目核心就是文件分块上传.前后端要高度配合,需要双方约定好一些数据,才能完成大文件分块,我们在项目中要重点解决的以下问题. * 如何分片: * 如何合成一个文件: * 中断了从哪个分片开 ...

  6. jsp大附件上传,支持断点续传

    我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用. 这次项目的需求: 支持大文件的上传和续传,要求续传支持所有浏览器,包括ie6,ie7,i ...

  7. Discuz!X2大附件上传插件-Xproer.HttpUploader6

    插件代码(github):https://github.com/1269085759/up6-discuz 插件代码(coding):https://coding.net/u/xproer/p/up6 ...

  8. asp.net大附件上传,支持断点续传

    以ASP.NET Core WebAPI 作后端 API ,用 Vue 构建前端页面,用 Axios 从前端访问后端 API ,包括文件的上传和下载. 准备文件上传的API #region 文件上传  ...

  9. SourceTree --转载 SourceTree大文件上传提示POST git-receive-pack (chunked)相关问题记录

    前两天,更新了百度地图的SDK,更新完了通过SourceTree上传到Github 结果提示 :POST git-receive-pack (chunked), 在网上查询之后了解到这个提示的原因是因 ...

随机推荐

  1. Java API操作ZooKeeper

    创建会话 package org.zln.zk; import org.apache.zookeeper.WatchedEvent; import org.apache.zookeeper.Watch ...

  2. Redis安装 java中的连接 序列化 反序列化

    安装路径 /webapp/redis/redis- #启动redis /webapp/redis/redis-/src/redis-server & #关闭redis /webapp/redi ...

  3. Hibernate中映射一对一关联(按主键映射和外键映射)和组件映射

                                                        Hibernate中映射一对一关联(按主键映射和外键映射)和组件映射 Hibernate提供了两 ...

  4. symfony3常用记忆

    1.控制器里获取当前用户信息 $user = $this->getUser(); 2.判断当前用户是否登录 // yay! Use this to see if the user is logg ...

  5. Broadcom GNSS xxx Geolocaltion Sensor与Windows导航程序的兼容性(转)

    Broadcom是Windows 8(3G)平板普遍采用的一款GPS传感器, 其windows驱动程序可以提供GNSS接口.GNSS接口提供的数据,说实话确实比普通手机的数据好.在开机.室外.无AGP ...

  6. ffmpeg代码笔记2:如何判断MP4文件里面的流是音频还是视频流

    http://blog.csdn.net/qq_19079937/article/details/43191211 在MP4结构体系里面,hdlr字段(具体在root->moov->tra ...

  7. 《Linux命令、编辑器与shell编程》第三版 学习笔记---002

    <Linux命令.编辑器与shell编程>第三版 学习笔记---001 Linux命令.编辑器与shell编程 Shell准备 1.识别Shell类型 echo  $0 echo $BAS ...

  8. 报告撰写,linux使用gimp简单做gif动图

    我想把我的系统菜单完整记录下来,方便查看,如果单纯使用文字比较单调,使用屏幕截图,需要依次打开多个图像查看也不是很方便,就想到了使用动画的形式展示.由于本人的系统一直使用Linux系统,为了一张gif ...

  9. 用css控制table td内文字超出隐藏

    (如有错敬请指点,以下是我工作中遇到并且解决的问题) 效果图: 重点是把table设置为table-layout: fixed; 超出的文字隐藏的效果才有. p标签超出的文字隐藏的效果不需要设置这个内 ...

  10. 如何使用python下载网站上的视频

    youtube-dl 从名字上也能看出来,是专门用来下载YouTube的视频. 不过本人对YouTube不感兴趣,但是这个模块可以用来下载bilibili上的视频我们就来试一试 首先pip insta ...