2008年12月20日星期六

Request对象错误ASP 0104:80004005不允许操作

Request对象错误ASP 0104:80004005不允许操作

网站服务器是win2003系统,今天上传一个260K的附件,系统却提示:Request 对象 错误 'ASP 0104 : 80004005'不 允许操作 /up/upload.asp,行 20。奇怪,难道是程序有错误了,立即到本地电脑win XP测试,发现正常。那应该是服务器 win2003的问题了。

 

    服务器操作系统为Windows 2003 server + IIS 6.0 服务器,原因:IIS6.0 禁止上传超过 200kB 的文件。因此需要修改 IIS 的默认设置。

 

    请进行如下操作:先在服务里关闭iis admin service服务,找到位于 C:\Windows\System32 \Inetsrv 中的 metabase.XML 打开,找到ASPMaxRequestEntityAllowed 把他修改为需要的值(如 5120000即5M),默认为204800,即200K,然后重启iis admin service服务 。

 

    注意: 在编辑文件前如果没有停止 IIS 服务, 则无法保存修改后的文件

 

    若你想在iis运行的时候修改其配置文件,则打开iis管理器,打开internet信息服务属性面板,钩选"允许直接编辑配置数据库,允许在iis运行时编辑iis配置数据库配置文件"。

 

   【技术背景】

 

    在 IIS 6.0 中, AspMaxRequestEntityAllowed 属性指定了一个 ASP 请求 (Request)可以使用的最大字节数. 如果 Content-Length 头信息中包含的请求长度超过 了 AspMaxRequestEntityAllowed 的值, IIS 将返回一个 403 错误信息. 

 

    这个属性值与 MaxRequestEntityAllowed 相似, 但是是针对 ASP 请求的. 假如你知道自己 的 ASP 应用只需要处理很少的请求数据, 你可以在 World Wide Web Publishing Service (WWW 发布服务)层 级设定全局的 MaxRequestEntityAllowed 属性为 1MB, 并单独设 定 AspMaxRequestEntityAllowed 为一个较小的值。

没有评论: