ASP.NET大文件上传设置。maxRequestLength无效的情况
2012-07-27 09:23
357 查看
ASP.NET大文件上传设置。maxRequestLength无效的情况
2012-03-29 11:12
2012-03-29 11:12
由于内网需求S项目需要上传超过200M的附件、我们使用的是flash批量上传。 这个系统运行了7年,今年被发现超过40M的附件会报应用级别错误。并且文件没上传成功,甚至没有回发。IIS报404错误 这个问题我处理了1天多,终于找到解决方案。根据IIS版本,分为两种。 1.IIS6 更改win2003的IIS 6.0对asp教程的上传文件大小为200k限制,aspx的上传程序没有影响。在IIS6.0中,默认设置是特别严格和安全的,最大只能传送 204,800 个字节,这样可以最大限度地减少因以前太宽松的超时和限制而造成的攻击。IIS 6 出于安全考虑, 默认最大请求是200K(也即最大提交数据限额为200KByte,204800Byte)。(在 IIS 6.0 之前的版本中无此限制) 解决办法一: 新建一个文本文件,内容如下: '---------------------------------------------------- set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2") set vdirObj=providerObj.get("IIsWebVirtualDirSetting='W3SVC/1/ROOT'") WScript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed vdirObj.AspMaxRequestEntityAllowed=51200000 vdirObj.Put_() WScript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed '---------------------------------------------------- 然后保存为.vbs文件,如:vf.vbs 然后在命令行模式下,执行 cscript 文件路径及文件名,如: cscript d:vf.vbs 这样ASP上传大小就更改为了上面设置的:51200000字节 (50兆) ![]() 解决办法二: 第一步:修改IIS设置,允许直接编辑配置数据库教程,如下图所示: ![]() 第二步:先在服务里关闭iis admin service服务 找到windows/system32/inesrv下的metabase.xml, 打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值,默认为204800,即200K 把它修改为你所需的大小即可。如:51200000(50M) 然后重启iis admin service服务。 2.iis7 解决办法: 修改IIS_schema.xml这个文件要先获得这个文件的控制权; 进入目录C:\Windows\System32\inetsrv\config\schema,修改文件IIS_schema.xml 权限: ![]() 进入IIS_schema.xml文件权限修改,选择”高级” ![]() 选择”所有者” ![]() 选中 administrators 确定 ![]() 再进入权限编辑,修改administrators 完全控制. ![]() 再去掉IIS_schema.xml的只读属性. 修改文件配置: 然后搜索 3000000 意思是 只允许上传 30MB 大小的文件,你在这后面多加一个0 就变成了 300MB 了就应该够用了。然后重启 IIS 7 <element name="requestLimits"> <attribute name="maxAllowedContentLength" type="uint" defaultValue="30000000" /> <attribute name="maxUrl" type="uint" defaultValue="4096" /> <attribute name="maxQueryString" type="uint" defaultValue="2048" /> <element name="headerLimits"> <collection addElement="add" clearElement="clear" removeElement="remove" > <attribute name="header" type="string" required="true" isUniqueKey="true" validationType="nonEmptyString" /> <attribute name="sizeLimit" type="uint" required="true" /> </collection> </element> 最后maxRequestLength我还是也做了对应的修改。使程序不限制request最大长度。完美解决。 |
相关文章推荐
- ASP.NET大文件上传设置。maxRequestLength无效的情况
- ASP.NET大文件上传设置maxRequestLength无效的情况
- asp.net设置默认上传文件大小
- ASP.Net在web.config中设置上传文件的大小方法
- ASP.NET上传大于4M的文件的相关设置
- ASP.NET上传大于4M的文件的相关设置
- ASP.Net在web.config中设置上传文件的大小方法 (转)
- asp.net下CKFinder IE浏览器中上传图片文件时提示“无效文件名或文件夹名称”的解决方法(原创文章)
- asp.net下CKFinder IE9以下浏览器中上传图片文件时提示“无效文件名或文件夹名称”的解决方法
- 设置webconfig解决ASP.NET上传文件大小限制
- 设置webconfig 解决asp.net上传文件过大问题
- ASP.Net在web.config中设置上传文件的大小方法
- ASP.Net中设置web.config文件上传大文件方法
- asp.net 甚至上传文件大小或者服务器设置上传文件大小
- FCKeditor 2.3 在ASP.NET中文件上传路径的设置
- ASP.Net中设置web.config文件上传大文件方法
- 设置ASP.NET 上传文件的大小:
- ASP.Net在web.config中设置上传文件的大小方法 (摘要)
- ASP.NET技巧:FCKeditor设置上传文件大小的最大值
- ASP.Net在web.config中设置上传文件的大小方法