设为首页 收藏本站
查看: 978|回复: 0

[经验分享] windows2003中IIS对于上传文件大小限制的解决办法

[复制链接]

尚未签到

发表于 2015-11-15 09:25:25 | 显示全部楼层 |阅读模式
  分析:
  从提示的错误中可以知道是由于 Request 引起的 说明发送的数据对错了
  突然想到 win2003 iis6 默认接收的数据是200KB 可能是POST数据超过了200KB
  解决办法:
  一、打开IIS在 本地计算机上查看属性如下图:
  
  选中 允许直接编辑配置数据库
  二、用计事本打开 C:\Windows\System32\Inetsrv 中的 metabase.XML
  找到 AspMaxRequestEntityAllowed="204800"
  把后面的 204800 改一个大点的数值
  然后保存。
  
  2.
  问题:上传图片时,单个文件上传都没有问题(图片尺寸没有超过200K),但选择批量上传(5个文件,肯定超过200K了)时就出现了下述问题,
  “Request 对象 错误 \'ASP 0104 : 80004005\'
  不允许操作
  upload.inc,行 80 ”
  上网查找原因,找到了解决办法,综合了几个帖子的内容转述如下:
  症状:
上传文件到 Windows 2003 server + IIS 6.0 服务器的时候遇到下列错误:
请求对象错误 \'ASP 0104 : 80004005\'
操作被禁止
/Upload.asp, line 80

原因:
在使用Windows2003作为web服务器的时候,当提交较多内容或上传较大文件时会出现如下错误:Request 对象 错误 \\’ASP 0104 : 80004005\\’   不允许操作。也就是我们这里说的ASP“0104:0x80004005”错误,其实这是微软在2003系统,准确地说是IIS6里面对安全的一个考虑,它对request的大小作了限制,最大为204800字节,也就是200K,这样可以最大限度地减少因以前太宽松的超时和限制而造成的攻击。


技术背景:
在 IIS 6.0 中, AspMaxRequestEntityAllowed 属性指定了一个 ASP 请求(Request)可以使用的最大字节数. 如果 Content-Length 头信息中包含的请求长度超过了 AspMaxRequestEntityAllowed 的值, IIS 将返回一个 403 错误信息.
这个属性值与 MaxRequestEntityAllowed 相似, 但是是针对 ASP 请求的. 假如你知道自己的 ASP 应用只需要处理很少的请求数据, 你可以在 World Wide Web Publishing Service (WWW 发布服务)层级设定全局的 MaxRequestEntityAllowed 属性为 1MB, 并单独设定 AspMaxRequestEntityAllowed 为一个较小的值.
   

  解决办法:
     方法一:
     1、先打开Internet 信息服务(IIS)管理器;
     (本地计算机 )---- 属性 ----允许直接编辑配置
数据库(N)
   
     一定要勾选“允许直接编辑配置
数据库(N)”
       2、然后在服务里关闭iis admin service服务;
   
     3、找到windows\\system32\\inesrv\\下的metabase.xml,用计事本打开metabase.xml,找到ASPMaxRequestEntityAllowed把他修改为需要的值,默认为204800,把它修改为51200000(50M);

       4、然后重启iis admin service服务。
  
     方法二:
     1、新建一个文本文件;
set providerObj=GetObject("winmgmts:/root/MicrosoftIISv2")
set vdirObj=providerObj.get("IIsWebVirtualDirSetting=’W3SVC/1/ROOT’")
Ws cript.Echo "Before: " & vdirObj.AspMaxRequestEntityAllowed
vdirObj.AspMaxRequestEntityAllowed=51200000
vdirObj.Put_()
Ws cript.Echo "Now: " & vdirObj.AspMaxRequestEntityAllowed  
     2、将以上内容保存为change.vbs;
     3、在cmd命令行界面下执行
cs cript [path]change.vbs  

       方法三:
     1、下载工具Internet Information Services (IIS) 6.0 Resource Kit Tools,并安装,记得自定义一下,里面有一些用不到,这里只用到Metabase Explorer;

       2、开始-程序菜单-IIS Resources-Metabase Explorer,运行Metabase Explorer;
       3、修改(local)\\LM\\W3SVC\\AspMaxRequestEntityAllowed属性,修改为较大的值,如51200000(50M)。
       在编辑文件前如果没有停止IIS服务,则无法保存修改后的文件。  
       若你想在iis运行的时候修改其配置文件,则打开iis管理器,打开internet信息服务属性面板,钩选“允许直接编辑配置数据库,允许在iis运行时编辑iis配置数据库配置文件。
  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-139400-1-1.html 上篇帖子: C# 通过WebService方式 IIS发布网站 上传文件到服务器的虚拟机下 详尽方法 下篇帖子: IIS isapi_rewrite 重写
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表