由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

这篇具有很好参考价值的文章主要介绍了由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

网站中,设计了一个批量搜索的功能,用户可以输入多个关键词进行批量查询搜索,但不出意外的话还是出意外了,有些用户可能会输入 N 多个关键词,我为了性能等考虑,会限制个数,比如每次批量查询仅限 50 个以内,但还是有意外发生,有些关键词可能会很长,即会引发”HTTP Error 400. The request URL is invalid”的错误。如图

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

按以前的经验呢,先检查了网站程序上的 web.config 文件,httpRuntime 节点下的 maxUrlLength 配置以及 security 节点下的 requestFiltering》maxUrl  ,

确认都以及设置过了

 

<httpRuntime targetFramework="4.6.1" enableVersionHeader="false" requestPathInvalidCharacters="" requestValidationMode="2.0" maxQueryStringLength="2097151000" maxUrlLength="2097151000" maxRequestLength="2097151000" relaxedUrlToFileSystemMapping="true" executionTimeout="36000" delayNotificationTimeout="36000" />

 

<security>

<requestFiltering allowDoubleEscaping="true" allowHighBitCharacters="true" >

<requestLimits maxAllowedContentLength="2097151000" maxQueryString="2097151000" maxUrl="2097151000" />

</requestFiltering>

</security>

还是出现”HTTP Error 400. The request URL is invalid”的错误,最后问度娘、谷歌,最终找到解决方法:修改服务器的注册表。

Http.sys Windows 的注册表设置(https://learn.microsoft.com/zh-CN/troubleshoot/developer/webapps/iis/iisadmin-service-inetinfo/httpsys-registry-windows)

可以在以下注册表项下创建以下 DWORD 注册表值:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

注册表项 默认值 有效值范围 注册表项函数 WARNING 代码
UrlSegmentMaxCount 255 0 – 16,383 段 最大 URL 路径段数。 如果为零,则计数受最大值的 ULONGb 约束。 1
UrlSegmentMaxLength 260 0 – 32,766 chars URL 路径段中的最大字符数 (URL) 中斜杠之间的区域。 如果为零,则由最大值限制的 ULONG 长度。 1

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

开干!

进入注册表  CMD =》 regedit=》HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\HTTP\Parameters

右击空白区域,选择 Dword 值,新建名称 UrlSegmentMaxLength,双击键名,选择十进制,值设置成2048,然后点击 确认。

同样,再新建名称 UrlSegmentMaxCount,双击键名,选择十进制,值设置成2048,然后点击 确认。

如图

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

需要注意的是,修改完以后不会立即生效,需重启 HTTP 服务。不想那么麻烦,也可以简单粗暴一下,重复服务器即可。

若不想或不允许重启服务器,可以按如下步骤来重启 HTTP 服务。

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

重启 HTTP 服务、键入和所有相关的 IIS 服务,请执行以下步骤:

选择 “开始”,选择 “运行”,键 入 Cmd,然后选择 “确定”。

停止 HTTP 服务:在命令提示符处,键入 net stop http,然后按 Enter。系统提示会停止相关联的服务器,输入 y 确认继续

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

启动 HTTP 服务:在命令提示符处,键入 net start http,然后按 Enter。

由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表

停止 IIS 服务:在命令提示符处,键入 net stop iisadmin /y,然后按 Enter。

备注:依赖于 IIS 管理员服务服务的任何 IIS 服务也将停止。 请注意停止 IIS 管理员服务时停止的 IIS 服务。 下一步将重启每个服务。

重启步骤 4 中已停止的 IIS 服务。 为此,请在命令提示符处键 net start servicename 入,然后按 Enter。 在命令中, servicename 是要重启的服务的名称。 例如,若要重启万维网发布服务服务,请键入 net start World Wide Web Publishing Service,然后按 Enter。

再来测试一下,访问正常啦!

来源:由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表 https://www.iwmyx.cn/yyljdzcdgc.html文章来源地址https://www.toymoban.com/news/detail-495243.html

到了这里,关于由于链接地址长度过长引起的”HTTP Error 400. The request URL is invalid”错误解决办法:修改注册表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • HTTP 请求 400错误

    HTTP 请求 400错误 客户端发送请求 服务端接收请求 客户端控制台打印 服务端控制台打印 将 \\\"avatarBase64\\\"\\\" 修改为 \\\"avatarBase64\\\": \\\"\\\" 即修改请求体: 为 产生这个问题的原因是客户端发送的 JSON 请求体格式不正确,导致服务端无法解析请求。具体地说,在客户端构建请求体时,键

    2024年02月19日
    浏览(45)
  • [DataX引擎配置错误,该问题通常是由于DataX安装错误引起,请联系您的运维解决 .]. - 在有总bps限速条件下,单个channel的bps值不能为空,也不能为非正数

    目录 一、背景 二、报错 三、定位原因 四、解决办法 1.修改文件datax/conf/core.json 2.json内容中删除总限速的配置 五、参数说明 六、DataX提速优化 1.提升每个channel的速度 2.提升job内Channel并发有三种配置方式 3.提高JVM堆内存  使用datax从pg同步数据到hive发生报错 datax自定义json内容

    2024年02月13日
    浏览(39)
  • postman : “status“: 400, “error“: “Bad Request“,

    总结:去看数据库的数据类型对不对,长度够不够 我的postman报错了 原本以为是要把所有的都打一边即使是空的,但是把“id”:“”放入postman也是一样的400 后续找到一篇文章说可能是数据类型有问题,去看了一眼数据库,结果phone那列没有长度, “status“: 400, “error“: “

    2024年02月10日
    浏览(51)
  • 记录一次nginx+Websocket反向代理时报错504-gateway TimeOut和各种开发遇到的坑(wss链接404、ws链接400 bad Requset等等)

    需要反向代理转发websocket链接。 1、nginx路径未匹配上 2、链接上后,在默认的http链接时长中没有发送心跳包,nginx自动关闭http链接,一般默认为1分钟 3、http链接转发后并没有升级为websockt链接(Bad Request 400错误) 4、websocket长链接1分钟后自动关闭 5、wss链接通过nginx转发时,

    2024年02月15日
    浏览(53)
  • Vue2 axios 发请求报400错误 “Error: Request failed with status code 400“

    最近在做一个项目,后端写了一个登录接口,postman可以正常请求。但我axios发请求出现400错误 \\\"Error: Request failed with status code 400\\\" 请求: 错误:  我研究了两天,查了无数资料,最后和朋友一起找到解决方法 原因:后端没跟我说需要什么格式的数据,我以为是默认的json,后来

    2024年02月11日
    浏览(65)
  • HTTP连接之出现400 Bad Request分析

    400是一种HTTP状态码,告诉客户端它发送了一条异常请求。400页面是当用户在打开网页时,返回给用户界面带有400提示符的页面。其含义是你访问的页面域名不存在或者请求错误。主要分为两种。 1、 语义有误,当前请求无法被服务器理解 。除非进行修改,否则客户端不应该

    2024年02月14日
    浏览(42)
  • HTTP代理出现400错误的原因及解决办法

           在使用HTTP代理过程中,会经常出现各种代码错误的提示,以下是使用HTTP代理出现400代码的原因和解决办法      使用HTTP代理时,出现400 Bad Request错误代码通常表示客户端发送的请求格式不正确或包含了无效的参数。下面是一些可能导致400错误的原因: 请求参数错误

    2024年02月06日
    浏览(47)
  • MySQL 8的MGR集群中设置autocommit=0引起ERROR 1064 (42000)错误

    在一套MySQL MGR集群测试环境中,同事测试时,在my.cnf参数文件中修改了autocommit参数(修改为autocommit=0),结果上周五,由于系统管理员要升级RHEL 8.8的系统补丁,所以将这这三台MySQL的数据库服务关闭了,升级完RHEL 8.8的系统补丁后,启动MySQL的集群时遇到了“ERROR 1192 (HY000)

    2024年02月09日
    浏览(49)
  • axios发送POST请求返回400状态:Uncaught (in promise) Error: Request failed with status code 400。

    问题:在postman上发送post请求时就能成功获得返回数据,但是在前端发送却得不到返回数据。 400错误,大概率就是 请求头、数据类型/参数名 ,前后端不一致 排查前端:发现前端的post请求头中 contentType: application/json 格式 排查后端:后端的接口的接收方式 ,已经添加 @Cros

    2024年02月09日
    浏览(62)
  • HTTP项目常见状态码笔记(200,302,400,403,404,405,500...),

    目录 认识 \\\"状态码\\\" (status code) 出现200 403 Forbidden 出现404 404 Not Found 出现 405 Method Not Allowed 出现 500 Internal Server Error 504 Gateway Timeout 302 Move temporarily 301 Moved Permanently 出现 \\\"空白页面\\\"   出现 \\\"无法访问此网站\\\" 状态码表示访问一个页面的结果 . ( 是访问成功 , 还是失败 , 还是其

    2024年02月11日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包