跳至正文
中文
立即开始

407 Proxy Authentication Required

407 Proxy Authentication Required 是代理服务器未收到有效认证信息时返回的错误。请求会被代理拦下,根本不会到达目标网站。

文章目录(8 个章节)

407 表示什么

407 响应来自代理服务器本身。代理服务器要求先提供用户名和密码,才会转发请求。原始响应通常如下:

HTTP/1.1 407 Proxy Authentication Required
Proxy-Authenticate: Basic realm="proxy"

代理服务器已经拦下请求,所以更换目标网站或请求头并不能解决问题。需要修正认证信息,或调整工具发送认证信息的方式。

常见原因

  • 认证信息错误或已过期。 可能是输入有误、多了空格,或保存后密码发生了变化。
  • 工具没有发送认证信息。 有些工具会忽略代理 URL 中的认证信息,需要在单独的用户名和密码字段中填写。
  • 密码中含有特殊字符。 @、: 或 # 等字符如果没有编码,会导致 URL 格式错误。
  • 字段顺序错误。 host:port:user:pass 和 user:pass@host:port 是两种不同的格式。混用格式会发送错误的字段值。

如何解决

  1. 重新复制认证信息。 不要手动输入。在 FlashIP 控制台中,点击 Copy All 可一次复制完整的代理信息。

  2. 在当前工具之外测试。 用 curl 发送一次请求。如果返回 200,说明认证信息有效,问题出在工具设置上。

    curl -x http://USERNAME:PASSWORD@HOST:PORT -I https://example.com
  3. 使用工具的认证字段。 在工具的代理认证字段中填写用户名和密码,不要将其直接写在 URL 中。

  4. 编码特殊字符。 如果必须使用 URL,请将 @ 替换为 %40、: 替换为 %3A、# 替换为 %23。

407、401 与 403 的区别

这三种状态码都表示访问遭到拒绝。判断是谁拒绝了请求,就能确定该从哪里排查。

状态码 返回方 含义
401 Unauthorized 网站 网站要求登录。
407 Proxy Authentication Required 代理服务器 代理服务器要求提供有效的认证信息。
403 Forbidden 网站 网站拒绝提供内容,通常是因为 IP 或客户端遭到封禁。

常见问题

407 错误是网站导致的吗?

不是。407 来自代理服务器。请求在到达网站前就已停止,因此需要检查认证信息或工具设置。

为什么 curl 可以正常使用,但我的工具返回 407?

不同工具发送代理认证信息的方式不同。有些工具会忽略代理 URL 中的认证信息,此时应在工具的代理认证字段中填写用户名和密码。

重试能解决 407 错误吗?

不能。收到有效认证信息前,代理服务器会一直拒绝请求,重试只会再次出现同一错误。

仍然遇到 407?请通过 Telegram 将完整错误信息和所用工具发送给我们的团队,我们会帮你检查设置。

相关术语

查看全部术语