我已经用编写了一个WCF服务。NET 4.0,它托管在我的Windows 7x64
Ultimate系统上,带有IIS 7.5。其中一个服务方法有一个'object'作为参数,我正试图发送一个包含图片的字节[]。只要这张图片的文件大小小于约48KB,一切正常。但是,如果我试图上传更大的图片,WCF服务将返回一个错误:(413)请求实体太大
当然,我花了3个小时在谷歌上搜索错误消息,我看到的关于这个主题的每一个主题都建议提高“uploadReadAheadSize”属性。因此,我所做的是使用以下命令(10485760=10MB):
“appcmd.exe设置配置-部分:system.webserver/serverruntime/uploadreadaheadsize:10485760/commit:apphost”
"ccriptadsutil.vbs设置w3svc/
我还使用IIS管理器通过打开站点并转到管理下的“配置编辑器”来设置值。不幸的是,我仍然得到了请求实体太大的错误,这真的令人沮丧!
有人知道我还能做些什么来修复这个错误吗?
匿名用户
我遇到了同样的问题,设置uploadReadAheadSize解决了这个问题:
http://www.iis.net/configreference/system.webserver/serverruntime
“该值必须介于0和2147483647之间。”
很容易在applicationHost中设置它。如果不想执行cmd操作,请配置fle。
它位于WindowsFOLDER\System32\inetsrv\config(2008服务器)中。
你必须用记事本打开它。首先对文件进行备份。
根据配置中的注释,建议使用位置标签解锁部分:
<location path="Default Web Site" overrideMode="Allow">
<system.webServer>
<asp />
</system.webServer>
</location>"
所以你可以写在底部(因为它以前不存在)。我在这里写maxvalue
-如果你愿意,写你自己的值。
<location path="THENAMEOFTHESITEYOUHAVE" overrideMode="Allow">
<system.webServer>
<asp />
<serverRuntime uploadReadAheadSize="2147483647" />
</system.webServer>
</location>
如果你把它放在最后一个
希望这能解决你的问题。对我来说,这是一个SSL开销问题,太多的post冻结了应用程序,导致(413)请求实体出现过大错误。
我在IIS7.5和WCF REST服务中遇到了同样的问题。试图通过POST上传任何超过65k的文件,将返回错误413“请求实体太大”。
您需要了解的第一件事是您在web中配置了什么样的绑定。配置。这里有一篇很棒的文章。。。
BasicHttpBinding vs WsHttpBinding vs WebHttpBinding
如果您有REST服务,则需要将其配置为“webHttpBinding”。以下是修复方法:
<system.serviceModel>
<bindings>
<webHttpBinding>
<binding
maxBufferPoolSize="2147483647"
maxReceivedMessageSize="2147483647"
maxBufferSize="2147483647" transferMode="Streamed">
</binding>
</webHttpBinding>
</bindings>
这不是IIS的问题,而是WCF的问题。WCF默认情况下将消息限制为65KB,以避免对大消息的拒绝服务攻击。另外,如果不使用MTOM,它会将字节[]发送到base64编码字符串(大小增加33%)=
要解决此问题,必须重新配置服务以接受较大的消息。此问题以前引发了400错误请求错误,但在较新版本中,WCF开始使用413,这是此类错误的正确状态代码。
您需要在绑定中设置maxReceivedMessagesize
。还可以需要设置readerQuotas
。
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding maxReceivedMessageSize="10485760">
<readerQuotas ... />
</binding>
</basicHttpBinding>
</bindings>
</system.serviceModel>
对工作或替代解决方案有什么想法吗?
我已在etc/nginx/nginx上将客户机的最大机身尺寸更改为100M。在etc/php5/fpm/php上,我已经将upload_max_文件大小更改为100M。在etc/php5/fpm/php上将ini和post_max_大小设置为100M。ini和我仍然无法让文件上传工作。 还有其他人遇到过这个问题吗?
我正试图将一个保存到一个嵌套中。但是当我尝试这么做时,服务器崩溃了,这就是我在控制台上看到的问题。日志: 有一件事是JSON请求的大小是1095922字节,在Nest中有人知道怎么做吗。js是否增加有效请求的大小?谢谢
使用Spring Rest模板上传一个100 MB的文件,使用多部分post请求。
我有下面的上传文件方法来上传多部分文件,我看到413请求实体太大,同时上传一个像28MB的大尺寸文件。在tomcat 9服务器配置中,我已经将设置为50MB,并且还尝试了下面链接中建议的设置。我已经在文件中添加了下面的属性。 我在下面的链接中尝试了一些建议,但仍然看到相同的错误:Spring Boot Upload Multipart 413请求实体太大