IIS7 https 发生413错误 未显示页面,因为请求实体过大

参考文档:     http://msdn.microsoft.com/zh-cn/library/cc737382(v=ws.10).aspx

                    http://www.java123.net/v/127192.html

                    http://blogs.iis.net/rakkimk/archive/2009/03/17/iis7-tweet-1-setting-uploadreadaheadsize.aspx

 

 

如果 Web 服务器、网站或站点的单个目录或文件上启用了客户端证书,则客户端在上载较大的文件时可能会看到 HTTP 413 错误。

如果客户端向运行 IIS 6.0 的 Web 服务器发送一个较长的 HTTP 请求(如 POST 请求),则 IIS 工作进程可能会收到足以解析请求标头的数据,但不会收到整个请求实体正文。当 IIS 工作进程检测到需要客户端证书以向客户端返回数据时,IIS 尝试重新协商客户端连接。不过,客户端无法重新协商连接,因为它正在等待向 IIS 发送请求中的其余数据。

如果请求客户端重新协商,则必须使用 SSL 预加载功能预加载请求实体正文。SSL 预加载功能将使用用于 ISAPI 扩展的 UploadReadAheadSize 配置数据库属性的值。但是,如果 UploadReadAheadSize 小于内容长度,则返回 HTTP 413 错误,并关闭连接以防止出现死锁。(在以下情况下出现“死锁”:客户端正在等待发送请求实体,而服务器等待完成重新协商,重新协商要求客户端能够发送数据,可是这是无法完成的。)

解决方案是确保没有禁止客户端发送整个实体正文。为此,应将 UploadReadAheadSize 的值更改为大于内容长度的值和最大请求实体主体限制更改为大于文件大小。

关于如何设置IIS7的配置,请参考http://www.iis.net/ConfigReference

一. 配置UploadReadAheadSize 

Appcmd.exe命令位于"%WinDir%\System32\Inetsrv"

 

appcmd.exe set config  -section:system.webServer/serverRuntime /uploadReadAheadSize:"49152"  /commit:apphost


你把"uploadReadAheadSize"的值逐渐改大来做测试,比如可以98304 -> 196608 -> 393216。

二. 配置MaxRequestEntityAllowed

在IIS“功能视图”中双击“ASP”模块,打开“限制属性”,将最后一项“最大请求实体主体限制[maxRequestEntityAllowed]”改为你需要的值(例如 1073741824, 1GB)。
同时,请注意如果你上传的文件较大,请考虑一下“脚本超时[scriptTimeOut]”是否需要更改, 默认是00:01:30,这里改成了00:05:30。

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
当出现"iis无法访问请求页面,因为该页的相关配置数据无效"的错误信息时,通常是由于服务器上的IIS配置存在问题导致的。这可能是由以下一些常见原因引起的: 1. IIS配置错误:首先,我们需要检查服务器上的IIS配置是否正确。确保网站或应用程序的相关设置正确,包括应用程序池、网站绑定、权限等。可以通过重新配置这些设置来修复问题。 2. Web.config文件错误:网站或应用程序的Web.config文件可能存在错误。检查文件中的语法错误、无效的配置节点或缺少必需的配置信息,并进行修复。这可能需要与开发人员或系统管理员合作来解决。 3. 依赖项缺失:某些网站或应用程序可能依赖于其他组件或服务。如果所需的组件或服务不存在或正确安装,也会导致相关配置数据无效的错误。在这种情况下,需要确保所有必需的依赖项已正确安装并可用。 4. 配置文件丢失或损坏:某些情况下,由于配置文件丢失或损坏,导致IIS无法读取或加载相关配置数据。在这种情况下,可以尝试使用备份文件进行替换,或重新安装IIS来修复问题。 总的来说,当出现"iis无法访问请求页面,因为该页的相关配置数据无效"的错误时,我们需要仔细检查IIS配置、Web.config文件、依赖项和配置文件的完整性和正确性。如果问题仍然存在,可能需要与相关的技术支持人员或开发人员进一步合作来解决。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值