比较来自世界各地的卖家的域名和 IT 服务价格

HTTP 错误 414. 询问 URL 太长。 asp.net

我得到一个错误 "HTTP Error 414. The request URL is too long." 从以下文章中,我明白这是由于一排的要求:

http://www.mytecbits.com/micro ... -long
在 web.config 我有一年
maxQueryStringLength="2097151"

. 这是最大值吗?

要解决这个问题,我应该安装
maxUrl

在 web.config? 如果是这样,最大支持值是多少?

我该怎么办才能纠正这个错误?
已邀请:

三叔

赞同来自:

这个错误实际上被抛出了
http://www.iis.net/learn/get-s ... rtext
, 不是 IIS. 在将请求传输到时发生错误 IIS 在请求处理传送带中。

要确保您可以检查响应标头中的服务器标题值 HTTP, 如图所示

.

制作 https.sys 索取更长的要求 URLs 没有错误 HTTP 414, 在注册表中 Windows 到服务器 PC, 在 Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP\Parameters, 创建类型值 DWORD 名称 MaxFieldLength 例如,该值非常大 65535.

关联: Http.sys
https://support.microsoft.com/en-us/kb/820129
如果您决定进行这种变化,那么显然它必须在所有环境中完成 /包括所有生产服务器/, 而不仅仅是在你当地 dev PC.

此外,任何情景和/或者记录您的命令用于配置新的服务器实例,必须更新以启用此注册表选项,以便您的命令不会忘记通过此参数 18 配置新工作服务器时的月份。

最后,请记住,由于大请求,使这一变化可能具有对服务器上运行的所有应用程序的安全性的不利影响 HTTP, 由攻击者发布,不会在传送带的早期阶段被拒绝,因为通常会。

作为通过安全方式改变这种改变的替代方案 http.sys 考虑接受请求的变更 HTTP POST 反而 HTTP GET 并将参数放在查询体中 POST 而不是很长 URL. 有关此信息的更多信息,请参阅部分
https://coderoad.ru/14202257/
.

二哥

赞同来自:

如此答案中所述 - >
https://coderoad.ru/417142/
允许的长度 url 取决于浏览器和服务器的组合。 因此,很难说它可以达到多长时间 url. 答案建议停留在下面 2000 符号B. url. 我不知道为什么你的查询太久了。 你能缩短它吗? 很难为您提供任何建议,而不了解更多关于解决方案和您的请求行。

帅驴

赞同来自:

通常, Url 有自己的长度限制,如果设置这个值,可以解决问题一段时间,但请记住,长时间 url 最好使用形式。 准确,最好使用 POST 采取行动 Get.

帅驴

赞同来自:

另外,如果您尝试使用大量参数 Request ajax 和 receive de 414 ERROR. 改变财产 dataType 在 JSON, 然后发送为类型 POST.
它解决了我的问题。

要回复问题请先登录注册