Error 520 — Web Server Returned Unknown Error: как исправить ошибку Cloudflare

Error 520 — Web Server Returned Unknown Error: как исправить ошибку Cloudflare

Error 520 — Web Server Returned Unknown Error означает, что Cloudflare смог связаться с вашим сервером, но получил от origin-сервера пустой, некорректный или неожиданный ответ. Это одна из самых неприятных ошибок, потому что она выглядит как проблема Cloudflare, но в большинстве случаев причина находится на стороне хостинга, сайта, сервера или его конфигурации.Ниже — простое объяснение, почему возникает Error 520, как быстро найти причину и что делать шаг за шагом, чтобы вернуть сайт в работу.

Быстрое решение

  • Проверьте, работает ли origin-сервер без Cloudflare.
  • Откройте логи хостинга: error log, access log, PHP log.
  • Временно отключите плагины безопасности, WAF и блокировки IP.
  • Убедитесь, что IP Cloudflare не режутся сервером или firewall.
  • Проверьте, не слишком ли большие cookies и заголовки.
  • Если включён HTTP/2 на origin — временно отключите его для проверки.
  • Проверьте SSL/TLS и Origin Pull, если используете их.
  • Для теста переключите запись в DNS only и проверьте сайт напрямую.

Что означает Error 520

Ошибка Error 520 — Web Server Returned Unknown Error появляется, когда Cloudflare не может корректно интерпретировать ответ от вашего origin-сервера. Иначе говоря, сервер ответил не так, как ожидалось по нормальному HTTP-сценарию.

Это не классическая ошибка вроде 404 или 500. Error 520 — это скорее «сборная» проблема, когда ответ от сервера оказался пустым, повреждённым, оборванным или нестандартным.

Почему возникает Error 520

На практике причина обычно одна из следующих:

  • сервер или PHP-процесс падает во время обработки запроса;
  • фаервол, ModSecurity, security-плагин или хостинг блокирует IP Cloudflare;
  • сервер отдаёт пустой ответ без нормального HTTP-статуса;
  • слишком большие заголовки или cookies;
  • ошибочная конфигурация HTTP/2 на origin-сервере;
  • неправильно настроен SSL или Origin Pull;
  • конфликт плагинов, темы, кэша или .htaccess;
  • нехватка памяти, перегрузка CPU, лимиты хостинга или сбой backend-сервиса.

Как понять, что проблема именно на origin-сервере

Самый простой тест — временно обойти Cloudflare и проверить, отвечает ли сайт напрямую. Если без проксирования сайт открывается, а через Cloudflare появляется Error 520, значит надо искать несовместимость или сбой между Cloudflare и origin.

Если сайт не работает даже напрямую, значит причина почти точно в хостинге, сервере, CMS, PHP, базе данных или конфигурации сайта.

Как исправить Error 520: пошаговая инструкция

1. Проверьте, работает ли сервер напрямую

Первое, что нужно сделать — понять, жив ли origin.

  1. Откройте панель Cloudflare.
  2. Перейдите в DNS.
  3. Для проблемной записи временно выключите проксирование и переведите её в DNS only.
  4. Подождите несколько минут.
  5. Проверьте сайт снова.

Если ошибка пропала, значит проблема связана с ответом origin-сервера именно при работе через Cloudflare.

2. Изучите error log и access log

Без логов Error 520 часто превращается в гадание. Проверьте:

  • Apache error log;
  • Nginx error log;
  • PHP error log;
  • логи ModSecurity;
  • логи панели хостинга;
  • логи firewall или WAF.

Ищите записи в тот же момент, когда вы получили ошибку. Часто там видно: падение PHP, превышение лимита памяти, segmentation fault, forbidden rule, разрыв соединения или сбой модуля.

3. Проверьте, не блокирует ли сервер IP Cloudflare

Очень частая причина — сервер воспринимает запросы Cloudflare как подозрительные и режет их. Это бывает из-за:

  • фаервола на сервере;
  • плагинов безопасности WordPress;
  • fail2ban;
  • ModSecurity;
  • правил на стороне хостинга.

Если IP Cloudflare попали под блокировку, Cloudflare увидит некорректный ответ и покажет Error 520.

4. Отключите плагины безопасности, кэш и проблемные расширения

Если у вас WordPress, временно отключите:

  • security-плагины;
  • плагины кэширования;
  • плагины редиректов;
  • плагины, меняющие headers или cookies;
  • плагины защиты входа и антибот-модули.

Если после этого ошибка исчезла, включайте их по одному, чтобы найти виновника.

5. Проверьте cookies и заголовки

Слишком большие cookies и раздутые заголовки — реальная причина Error 520. Это часто происходит, когда сайт использует слишком много трекинга, персонализации, A/B-тестов, рекламных скриптов или плагинов, добавляющих длинные cookie-цепочки.

Особенно внимательно проверьте:

  • маркетинговые и рекламные скрипты;
  • плагины авторизации;
  • WooCommerce и личные кабинеты;
  • сторонние интеграции, создающие много cookies.

6. Проверьте HTTP/2 на origin-сервере

Если ваш сервер объявляет поддержку HTTP/2, но делает это некорректно, Cloudflare может вернуть Error 520. Иногда проблема возникает после обновления панели, веб-сервера, reverse proxy или SSL-настроек.

Для диагностики временно отключите HTTP/2 к origin, если такая опция у вас используется, и проверьте, исчезнет ли ошибка.

7. Проверьте SSL, сертификаты и Origin Pull

Если включены жёсткие SSL-настройки, неправильный origin-сертификат или некорректный Origin Pull, сервер может отвечать нестандартно. Внешне это иногда выглядит именно как Error 520, а не как более очевидная SSL-ошибка.

Проверьте:

  • какой режим SSL включён в Cloudflare;
  • действителен ли сертификат на origin;
  • совпадает ли цепочка сертификатов;
  • настроен ли Origin Pull корректно;
  • не сломаны ли правила между Cloudflare и сервером.

8. Проверьте ресурсы хостинга

Иногда Error 520 — это просто следствие перегрузки. Сервер не успевает обработать запрос и отдаёт пустой или оборванный ответ.

Проверьте:

  • лимит памяти PHP;
  • нагрузку на CPU;
  • число одновременно запущенных процессов;
  • лимиты входящих запросов;
  • доступность базы данных и backend-сервисов.

9. Проверьте .htaccess, Nginx rules и редиректы

Кривые правила в .htaccess или конфиге Nginx могут ломать ответ сервера. Особенно если недавно:

  • добавлялись редиректы;
  • подключались security rules;
  • менялись кэш-правила;
  • переносился сайт;
  • настраивались headers и gzip/brotli.

Если есть подозрение, временно верните базовую конфигурацию и проверьте сайт.

10. Свяжитесь с хостингом и дайте точные данные

Если руками найти причину не удалось, пишите в поддержку хостинга не общими словами, а конкретно:

  • точное время ошибки;
  • часовой пояс;
  • URL, на котором возникла проблема;
  • Ray ID с страницы ошибки Cloudflare;
  • скриншот ошибки;
  • результаты проверки с включённым и отключённым Cloudflare.

Так поддержка быстрее найдёт запись в логах и скажет, что именно ломает ответ origin-сервера.

Advanced troubleshooting

Если обычные шаги не помогли, проверьте более глубокие причины:

  1. Сделайте запрос к origin через curl и посмотрите headers.
  2. Проверьте, не ломается ли сайт только на определённых URL.
  3. Сравните поведение для гостей и авторизованных пользователей.
  4. Отключите временно CDN-минификацию, Rocket Loader и агрессивную оптимизацию.
  5. Убедитесь, что сервер корректно возвращает HTTP status code и response body.
  6. Проверьте PHP-FPM, upstream, reverse proxy и контейнеры, если используется Docker или балансировщик.
  7. Если ошибка плавающая, ищите пики нагрузки и падения worker-процессов.

Как предотвратить Error 520 в будущем

  • не блокируйте IP Cloudflare на сервере и в firewall;
  • держите WordPress, тему и плагины в актуальном состоянии;
  • не перегружайте сайт лишними cookie и tracking-скриптами;
  • проверяйте логи после каждого серьёзного изменения на сайте;
  • тестируйте редиректы, SSL и правила безопасности на staging;
  • следите за лимитами хостинга и стабильностью PHP-процессов;
  • не включайте экспериментальные настройки HTTP/2 и proxy без проверки.

Когда нужно обращаться в поддержку

Связывайтесь с хостингом или системным администратором сразу, если:

  • ошибка появляется регулярно и без понятной причины;
  • сайт падает под нагрузкой;
  • в логах видны crashes, segfault, memory exhausted или blocked requests;
  • ошибка возникла после смены сервера, SSL, панели или веб-сервера;
  • вы не имеете доступа к системным логам и firewall.

FAQ

Error 520 — это проблема Cloudflare или хостинга?

Чаще всего причина находится на стороне origin-сервера, хостинга, firewall, PHP, CMS или конфигурации сайта. Cloudflare в этой ситуации только показывает ошибку, потому что получил неправильный ответ от origin.

Чем Error 520 отличается от Error 521?

Error 520 означает неожиданный или пустой ответ от сервера. Error 521 обычно указывает, что Cloudflare не смог нормально установить соединение, потому что origin отклонил подключение.

Может ли WordPress вызывать Error 520?

Да. Часто виноваты плагины безопасности, кэш, перегруженные cookies, ошибки PHP, конфликт темы или падение процесса PHP-FPM.

Поможет ли отключение Cloudflare?

Как временная диагностика — да. Если в режиме DNS only сайт работает, вы быстрее поймёте, что конфликт возникает именно между Cloudflare и origin-сервером.

Может ли Error 520 быть из-за больших cookies?

Да. Слишком большие заголовки и cookies — одна из типичных причин этой ошибки, особенно на сайтах с большим количеством плагинов и маркетинговых скриптов.

Вывод

Error 520 — Web Server Returned Unknown Error почти всегда указывает на сбой или некорректный ответ origin-сервера. Чаще всего проблема связана не с самим Cloudflare, а с хостингом, firewall, PHP, cookies, HTTP/2, SSL или конфигурацией сайта.

Самая правильная стратегия — не гадать, а последовательно проверить: работает ли origin напрямую, что видно в логах, не режутся ли IP Cloudflare, не ломают ли сайт плагины, и нет ли проблем с заголовками, HTTP/2 или SSL. Обычно причина находится довольно быстро, если идти именно в этом порядке.

 

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *