什么是400错误?

400bad request错误是当浏览器向web服务器发送请求时,服务器无法正确理解或处理它。

这是一种HTTP响应状态代码. 以4xx开头的代码通常表示客户端出现错误-这意味着问题来自发出请求的内容(浏览器,应用程序等)。).

服务器使用许多不同的消息来指示400状态代码,包括:

  • 400坏请求
  • HTTP400错误请求
  • HTTP状态400-错误请求
  • 400错误请求错误
  • HTTP错误400
  • 错误请求:错误400
  • HTTP错误400-错误请求

错误看起来像这样,具体取决于您的浏览器:

400 bad request error page with error highlighted

让我们深入了解400个错误请求的常见原因以及如何修复它们。

HTTP400错误的原因&如何修复它们

以下是404错误请求错误的最常见原因-及其解决方案:

1. URL字符串错误或其他无效语法

400错误请求错误的最常见原因之一是URL中的问题-类似额外空格或特殊字符,如"&",""%"和"#。”

有时,URL太长且复杂。 浏览器有字符限制(例如,最多~2,000个字符在Chrome上),并且超过这些限制可能会触发400错误。

Arrow pointing to unsupported special character in URL causing the 400 bad request error

错误也可能是由于URL之外的语法无效而破坏了标准规则。

当请求中缺少或不正确的HTTP标头时,通常会发生这种情况,这会阻止服务器解释或处理它。

例如,下面的GET请求(从指定的资源请求数据)具有格式不正确的标头:

获取/HTTP/1.1

主机example.com

User-Agent:Mozilla/5.0

接受:文本/html

在这种情况下,主机标头缺少冒号。

如何修复它

如果你是一个普通的网站访问者:

  • 仔细检查URL:检查URL并删除任何额外的空格、拼写错误或无效字符

对于网站所有者和开发人员:

  • 使用URL编码器:如果URL包含特殊字符(例如,在访问名称中带有空格的文件或在"搜索"等搜索查询中包含"&"等符号时?术语=盐和胡椒"),使用一个URL编码器将这些字符转换为服务器可以正确解释的格式
  • 调试动态生成的Url:如果您使用API或脚本自动生成URL,则可能是创建参数格式不正确、字符编码不正确或超出长度限制的链接。 使用像邮递员这样的工具链接检查器准确地确定你的URL是什么导致了这个问题。
  • 使用开发人员工具来识别错误:如果您不确定导致错误的原因,请打开浏览器的开发人员控制台(Chrome中的Crtl+Shift+I),转到"网络"选项卡,尝试请求,并查找红色400错误。 点击它查看导致问题的原因。
Chrome web developer tools Network tab open and Headers tab selected with Status Code error highlighted for 400 bad request error page

2. 损坏或无效的Cookie

当cookie(网站存储在您设备上的小数据文件)过期或损坏时,它们可能会导致400错误。

如何修复它

如果你是一个普通的网站访问者:

  • 清除饼干或隐姓埋名:清除浏览器缓存或启动私有会话以删除现有cookie
  • 禁用扩展:暂时关闭可能干扰cookie的扩展
  • 检查浏览器更新:确保您使用的是最新版本,因为过时的浏览器可能会以不同的方式处理cookie

对于网站所有者和开发人员:

  • 验证网站代码:如果您是开发人员或网站所有者,请检查您的cookie实现是否遵循当前标准和安全实践。 意味着cookie需要使用正确的语法,安全设置和域设置(确定哪些网站可以使用cookie的规则),并保持在4KB大小限制下。

3. 浏览器扩展

浏览器扩展可能会干扰您的浏览器与网站服务器的通信方式,从而导致400个错误请求。

例如,广告拦截器可能会阻止加载网站正常运行所需的必要脚本。 或者,隐私扩展可能会修改或阻止网站正确处理请求所需的cookie。

如何修复它

  • 禁用和检查扩展:关闭所有扩展,然后逐个启用它们以识别罪魁祸首,并检查扩展的设置
  • 更新扩展:单击浏览器工具栏中的扩展图标。 然后,查找更新选项以获取最新版本。 在Chrome中,您需要切换到"开发人员模式",然后单击"更新资料"按钮。
Chrome extensions management page with Developer mode toggled on and arrow pointing to 更新资料 button

4. 过时的DNS缓存

域名系统(DNS)翻译域名(例如"www.yoursite.com")转换为IP地址(例如192.168.1.1)。

您的设备将这些记录存储在其DNS缓存中。 但是,如果网站的IP地址发生变化,这些记录可能会过时。

当发生这种情况并且您访问同一站点时,您的计算机将请求发送到不再存在的旧IP地址,而不是新的IP地址。

如何修复它

要删除可能导致400错误的过时记录,请刷新DNS缓存。

以下是如何在Windows上执行此操作:

打开"开始"菜单并在搜索栏中键入"cmd"。

选择"命令提示符"后,单击"以管理员身份运行.”
 

Windows 11 开始 menu with 'cmd' typed in search bar and Run as administrator option for Command Prompt highlighted

系统可能会提示您允许访问。 如果是,请选择"是的.”

在打开的命令提示符窗口中,输入命令"ipconfig/flushdns"并按"Enter"键。

然后,您将看到一条消息,确认DNS解析程序缓存已成功刷新:

Administrator mode command prompt window showing success message for DNS resolver cache flush command

现在,再次尝试访问该页面以查看问题是否已解决。

5. 服务器问题

有时,400错误实际上可能是由服务器引起的。 当服务器配置不正确并将有效请求解释为无效时,会发生这种情况。

例如,服务器可能被设置为拒绝包含它错误地识别为安全威胁的某些单词的请求。 或者,它可能有过时的规则,不适用于现代浏览器。

如何修复它

如果你是一个普通的网站访问者:

  • 联系网站所有者或支持团队报告问题
  • 稍后尝试访问该站点,因为临时服务器问题通常会自行解决

对于网站所有者和开发人员:

  • 服务器错误日志:查看web服务器日志,了解触发400错误的具体细节
  • 配置文件:检查服务器配置文件(如。Apache或nginx的htaccess。Conf for Nginx)对于可能过于限制的错误或规则
  • 调整安全设置:暂时禁用或修改web应用程序防火墙规则,以查看它们是否阻止合法流量
  • 检查服务器资源:确保您的服务器没有耗尽内存或处理能力,这可能导致它拒绝它通常会接受的请求
  • 更新服务器软件:确保您正在运行最新版本的web服务器软件,以避免可能导致400错误的已知错误

6. 文件大小限制

获得400错误的一个常见原因是,如果您尝试将文件上传到您的网站太大。

例如,将超过大小限制的图像,视频或文档文件上传到WordPress站点可能会导致400错误。

在WordPress中,您可以通过单击"检查文件大小限制媒体报道”> “图书馆,"然后"添加新媒体文件"在左手列。

然后你应该看到这样的东西:

WordPress admin dashboard with 媒体报道 Library page open, 添加新媒体文件 button clicked, and Maximum upload file size limit highlighted.

如何修复它

将文件大小减小到您的限制以下,以确保服务器可以完成您的请求。

托管您的视频YouTube的 or 维梅奥,将您的音频文件上传到声云片,或者使用像这样的工具压缩图像压缩图像更容易保持在你的极限之内。

在您的网站上查找和修复4xx错误

理想情况下,您需要审核您的网站以查找错误,例如400个错误请求以前它们会影响性能并惹恼网站访问者。

塞姆鲁什氏现场审核工具可以提供帮助。

打开该工具,按照配置设置,然后转到"问题"tab。 在搜索栏中键入"4xx"以查找4XX错误列表,然后单击页面。

Semrush 现场审核 问题 page with '4xx' in search bar and errors section showing 4 pages returned 4xx status code row

您将找到受影响的页面及其错误代码的列表(该工具显示的不仅仅是400错误):

List of pages that returned 4xx status code

然后,应用您在本文中学到的内容来修复错误。

雷切尔 汉德利
Rachel是一名资深内容作家,在内容营销和SEO方面拥有12年以上的经验。她曾在代理机构工作,为各种品牌制定和执行内容战略,并在内部推动SaaS初创公司的有机增长。