前面总结了.net的Dvbbs.Net 1.1文件上传限制问题,现在补充一下 修改DZ论坛附件大小的方法。
这里说的对DZ论坛附件大下的修改,不是简单的修改成2M大小,而是突破DZ论坛系统最大不超过16M附件的限制。经过修改,可以上传任意大小,几百兆乃至几G的附件。本方法亦适用于其他PHP类论坛及博客程序。
一、修改php.ini中的四项值
需要在PHP.ini里设置以下几项:
1. post_max_size =10M
表单提交最大数据为10M.此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的.
限制范围包括表单提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等...
2.file_uploads = On
是否允许上传文件,如果为OFF您将不能上传文件.
3.upload_tmp_dir = "D:/APM/PHP/uploadtemp/"
上传文件时系统使用的缓存目录.如果此目录所在磁盘空间不足的话您将不能上传文件.
4.upload_max_filesize =2M
最大上传文件大小,此项针对上传文件时单个文件的大小.
与post_max_size之间的关系:
在论坛发表贴子时,您post_max_size 设为10M,而此项设成了2M,那么您只能上传最大为2M的附件,且可以同时上传5个.
5、对于超大文件,譬如500M以上的文件,传送时间过长导致的超时问题,通过修改下列数值解决
max_execution_time = 30 ; Maximum execution time of each script, in seconds
max_input_time = 60 ; Maximum amount of time each script may spend parsing request data
memory_limit = 200M ; Maximum amount of memory a script may
到此重启IIS!
二、修改数据库字符串值
1、登陆数据库,找cdb_usergroups数据表将maxattachsize字段类型从mediumint修改為int,长度改为10或更大数值。
简单原因说明:
MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL] 最大8位
一个中等大小整数。有符号的范围是-8388608到8388607,无符号的范围是0到16777215。
INT[(M)] [UNSIGNED] [ZEROFILL] 最大10位
一个正常大小整数。有符号的范围是-2147483648到2147483647,无符号的范围是0到4294967295。
BIGINT[(M)] [UNSIGNED] [ZEROFILL] 最大20位
大整数。带符号的范围是-9223372036854775808到9223372036854775807。无符号的范围是0到18446744073709551615
三、进入DZ论坛系统设置---用户管理---用户组---对管理员编辑详情,修改容许上传附件大小!