TrueSocks

Гайды · 8 мин

Ошибки прокси 407, 403, 502, 504: что значат и как исправить

  • Редакция TrueSocks
  • 8 мин чтения

Ошибка прокси почти всегда сообщает, что сломалось, нужно только правильно её прочитать. Код 407 говорит о проблеме с паролем, 403 может прийти и от прокси, и от сайта, а 502 и 504 означают, что прокси не дождался нормального ответа от сайта. Ниже разбор всех частых кодов и сетевых ошибок, способ за минуту понять, на чьей стороне проблема, и чек-лист, который решает большинство случаев без обращения в поддержку.

Коротко

5 пунктов
  • Сначала выясните, кто вернул ошибку: прокси при установке туннеля или сайт уже после него. Это видно в выводе curl -v.
  • 407 - это почти всегда логин, пароль или неверный формат строки доступа; при привязке по IP проверьте, не сменился ли ваш адрес.
  • 502, 503 и 504 возникают между прокси и сайтом: сайт недоступен, перегружен или медленно отвечает.
  • Ошибки соединения без кода (отказ, сброс, таймаут) чаще всего вызваны неверным портом или протоколом.
  • Не повторяйте запрос бесконечно при 403 и 429: это только ухудшит отношение сайта к адресу.

Кто вернул ошибку: прокси или сайт

#

При работе с HTTPS-сайтом через HTTP(S)-прокси соединение проходит два этапа. Сначала клиент просит прокси открыть туннель командой CONNECT, и прокси отвечает своим кодом. Если туннель открыт, дальше идёт обычный разговор с сайтом, и все последующие коды принадлежат уже сайту.

curl -v показывает оба этапа
curl -v -x http://login:[email protected]:8000 https://api.ipify.org

> CONNECT api.ipify.org:443 HTTP/1.1
< HTTP/1.1 200 Connection established     <- ответ прокси: туннель открыт
...
< HTTP/2 200                              <- ответ сайта

Если прокси отказал на первом этапе, curl напишет CONNECT tunnel failed, response 407 (в старых версиях Received HTTP code 407 from proxy after CONNECT). Значит, проблема в прокси или в данных доступа. Если туннель открылся, а потом пришёл 403, ограничивает сайт. Браузер такой детализации не показывает, поэтому при любой непонятной ошибке сначала повторите запрос в curl.

КодКто обычно возвращаетКоротко
407ПроксиНужна или не принята авторизация
403Прокси или сайтДоступ запрещён
429СайтСлишком много запросов
502ПроксиСайт ответил некорректно или оборвал соединение
503Прокси или сайтСервис временно недоступен
504ПроксиСайт не ответил за отведённое время

Ошибка 407 Proxy Authentication Required

#

Прокси требует авторизацию и не получил правильных данных. Это самая частая ошибка при первом подключении, и почти всегда она решается на вашей стороне.

  • Опечатка в логине или пароле. Копируйте данные из кабинета, а не перепечатывайте. Проверьте лишние пробелы в начале и конце.
  • Перепутан формат строки. Программа ждёт login:password@ip:port, а вы вставили ip:port:login:password, и она приняла логин за порт. Переведите строку в нужный формат в конвертере прокси.
  • Спецсимволы в пароле. Символы @, :, /, # в адресе прокси нужно закодировать: @ записывается как %40, : как %3A.
  • Программа не умеет авторизацию. Например, Chrome с ключом --proxy-server не принимает логин и пароль в адресе. Используйте настройку через расширение, антидетект или привязку по IP.
  • Привязка по IP, а ваш адрес сменился. Если доступ открыт для конкретного IP, а провайдер выдал вам новый, прокси перестанет вас пускать. Обновите разрешённый адрес в кабинете.

Ошибка 403 Forbidden

#

403 означает «доступ запрещён», и важно понять, от кого он пришёл.

403 от прокси

Прокси отказывается открывать туннель: ваш IP не в списке разрешённых, запрошен порт, который сервер не пропускает, или срок действия прокси закончился. Проверьте статус и дату окончания в кабинете и список привязанных адресов.

403 от сайта

Туннель открыт, но сайт не хочет обслуживать запрос. Причины: сайт не пускает адреса дата-центров или конкретные подсети, у адреса плохая репутация, запросы похожи на автоматические (нет нормальных заголовков, браузер без JavaScript), или страна адреса не та, которую ожидает сервис.

Что делать: проверьте, открывается ли сайт с этого прокси в обычном браузере. Если в браузере всё работает, дело в заголовках и поведении скрипта. Если не работает и в браузере, сайту не нравится тип адреса: для строгих площадок подойдут ISP, резидентские или мобильные прокси. Подробно о причинах в статье почему сайт блокирует прокси.

Ошибка 429 Too Many Requests

#

Сайт ограничил частоту запросов с вашего адреса. Это не поломка прокси, а сигнал снизить темп. Если в ответе есть заголовок Retry-After, он подскажет, сколько секунд подождать.

  • Уменьшите число одновременных запросов на один адрес и добавьте паузы.
  • Распределите нагрузку по нескольким адресам: пул серверных IPv4 или ротация у резидентских прокси.
  • Кешируйте ответы и не запрашивайте одни и те же страницы повторно.
  • Соблюдайте robots.txt и условия сайта. Цель - не перегружать сайт, а не выжать из него максимум.

Практика сбора данных с умеренной нагрузкой описана в статье парсинг цен без блокировок и на странице прокси для парсинга.

Ошибки 502, 503 и 504

#

Эти коды прокси возвращает, когда что-то пошло не так на участке между ним и сайтом.

КодЧто произошлоЧто делать
502 Bad GatewayСайт оборвал соединение, вернул мусор или прокси не смог к нему подключитьсяПовторите через минуту; проверьте, открывается ли сайт без прокси; попробуйте другой адрес
503 Service UnavailableСайт или прокси временно перегружены, идут работыПодождите, снизьте нагрузку; если код приходит от прокси на всех сайтах, напишите в поддержку
504 Gateway TimeoutСайт не ответил за время ожидания проксиПроверьте сайт без прокси; увеличьте свой таймаут; выберите прокси ближе к серверу сайта

Ключевой тест: если сайт не открывается и без прокси, проблема на стороне сайта, и прокси тут ни при чём. Если без прокси работает, а через один адрес нет, попробуйте соседний адрес из того же заказа. Если 502 приходит на нескольких адресах одной подсети, сайт может отсекать эту подсеть: такое поведение тоже стоит разобрать с поддержкой.

Ошибки соединения без HTTP-кода

#

Если программа вообще не смогла поговорить с прокси, кода ответа нет, есть только сетевая ошибка. Вот как они выглядят в разных инструментах:

ОшибкаГде встречаетсяВероятная причина
ERR_PROXY_CONNECTION_FAILEDChrome, EdgeНеверный адрес или порт прокси, прокси выключен, его блокирует ваш файрвол
ERR_TUNNEL_CONNECTION_FAILEDChrome, EdgeПрокси принял подключение, но отказался открыть туннель: авторизация, запрещённый порт
ECONNREFUSED, Connection refusedNode.js, curl, PythonНа этом порту никто не слушает: опечатка в порте или прокси не активен
ECONNRESET, Connection resetВездеНе тот протокол: HTTP-клиент обращается к SOCKS-порту или наоборот
ETIMEDOUT, curl: (28)ВездеНет ответа: сеть, файрвол, перегрузка или слишком короткий таймаут
curl: (97)curlОшибка рукопожатия с прокси, часто неверный протокол SOCKS
ProxyErrorPython requestsОбёртка над любой из ошибок выше, смотрите текст внутри

Таймауты: подключение и ответ

Различайте два таймаута. Таймаут подключения (connect timeout) срабатывает, если не удалось связаться с прокси: обычно хватает 5-10 секунд. Таймаут ответа (read timeout) срабатывает, если сайт долго отвечает: для тяжёлых страниц через далёкий прокси ставьте 20-30 секунд. Если таймауты стабильно случаются на одном адресе, а на соседних нет, адрес проблемный. Если на всех, разберитесь со скоростью по статье почему прокси медленно работает.

Чек-лист: что проверить перед обращением в поддержку

#
  1. Скопируйте данные заново

    Возьмите строку доступа из кабинета без ручной правки и проверьте формат в конвертере.

  2. Сверьте протокол и порт

    HTTP(S) или SOCKS5 должен совпадать с заказом, порт с выдачей.

  3. Проверьте через curl

    curl -v -x <прокси> https://api.ipify.org покажет, где обрывается соединение и какой IP видит сайт.

  4. Проверьте срок и привязку

    Прокси активен, срок не истёк, а при привязке по IP ваш текущий адрес есть в списке разрешённых.

  5. Исключите сайт

    Откройте тот же сайт без прокси и другой сайт через прокси. Так вы поймёте, где источник ошибки.

  6. Соберите детали для поддержки

    Адрес прокси без пароля, точный текст ошибки, время, вывод curl -v. С такими данными вопрос решается быстрее.

Если адрес не работает по вине сервера, в течение 24 часов после покупки его можно бесплатно заменить. Поэтому проверяйте прокси сразу после выдачи: подробный порядок в статье как проверить прокси. Новые адреса под задачу можно подобрать в каталоге.

Вопросы и ответы

Как исправить ошибку 407 Proxy Authentication Required?

Скопируйте логин и пароль заново, проверьте формат строки, который ждёт программа, и закодируйте спецсимволы в пароле. При привязке по IP убедитесь, что ваш текущий адрес есть в списке разрешённых.

Что значит 502 Bad Gateway при работе через прокси?

Прокси не получил нормального ответа от сайта: сайт оборвал соединение или недоступен. Проверьте сайт без прокси, повторите запрос позже или попробуйте другой адрес.

Чем 504 отличается от таймаута в программе?

504 возвращает прокси, когда сайт не ответил ему вовремя. Таймаут в программе срабатывает на вашей стороне, если ответ не пришёл за заданное вами время, в том числе когда не отвечает сам прокси.

Почему через прокси сайт отдаёт 403, а без прокси открывается?

Сайт не пускает этот тип адресов или конкретную подсеть, либо запрос выглядит автоматическим. Проверьте сайт через тот же прокси в обычном браузере и при необходимости смените тип прокси на ISP, резидентский или мобильный.

Редакция TrueSocks

Гайды и разборы о прокси

Статьи пишет команда TrueSocks: те, кто собирает каталог прокси и отвечает в поддержке. Нашли неточность или устаревший шаг? Напишите нам в Telegram, поправим.

На посадку

Прокси для этой задачи

Цена «от» за единицу на базовый срок, страны и скидка за объём видны на странице товара.

  • #ошибки
  • #407
  • #502
  • #таймаут
  • #диагностика
Поделиться

Прокси предоставляются для законных задач. Спам, мошенничество и взлом запрещены, соблюдайте правила площадок. Правила сервиса

Все статьи