Ошибка 520 (Web Server Returned an Unknown Error) возникает при использовании Cloudflare и означает, что Cloudflare смог подключиться к серверу сайта, однако получил неожиданный или некорректный ответ от веб-сервера.
В отличие от ошибок 521, 522 или 524, ошибка 520 обычно связана не с недоступностью сервера, а с неправильным ответом со стороны сайта, веб-сервера, CMS или одного из установленных плагинов.
Типичное сообщение выглядит следующим образом:
Error 520
Web server is returning an unknown error
Основные причины ошибки 520
Ошибка может возникать по нескольким причинам:
- Поврежденные HTTP-заголовки;
- Ошибки PHP-приложения;
- Конфликт плагинов WordPress;
- Перегрузка сервера;
- Некорректная работа Firewall;
- Блокировка IP-адресов Cloudflare;
- Ошибки в настройках Nginx или Apache;
- Недостаток оперативной памяти;
- Некорректная работа CDN или кэширующих модулей.
Шаг 1. Проверьте доступность сайта без Cloudflare
Временно отключите проксирование Cloudflare.
Перейдите в DNS-зону Cloudflare и отключите проксирование:
Orange Cloud → Gray Cloud
После этого откройте сайт напрямую.
Если сайт открывается без ошибок, проблема находится между Cloudflare и сервером.
Шаг 2. Проверьте журналы ошибок сайта
Для Apache:
tail -f /var/log/apache2/error.log
Для Nginx:
tail -f /var/log/nginx/error.log
Для PHP:
tail -f /var/log/php8.2-fpm.log
Версия PHP может отличаться.
Шаг 3. Проверьте использование ресурсов сервера
Проверьте загрузку процессора и памяти:
htopилиtop
Проверьте объем свободной памяти:
free -h
Если памяти недостаточно, веб-сервер может возвращать некорректные ответы Cloudflare.
Шаг 4. Проверьте настройки Firewall
Убедитесь, что IP-адреса Cloudflare не блокируются сервером.
Проверьте правила UFW:
ufw status
Проверьте правила iptables:
iptables -L -n
Если используется Fail2Ban, проверьте список блокировок:
fail2ban-client status
Шаг 5. Проверьте SSL-сертификат
Некорректный SSL-сертификат также может вызывать ошибку 520.
Проверьте сертификат:
openssl s_client -connect domain.com:443
Убедитесь, что:
- сертификат действителен;
- доменное имя совпадает;
- цепочка сертификатов установлена корректно.
Шаг 6. Отключите плагины WordPress
Если сайт работает на WordPress:
- Отключите все плагины.
- Очистите кэш сайта.
- Очистите кэш Cloudflare.
- Проверьте работу сайта.
Особенно часто ошибку вызывают:
- плагины безопасности;
- плагины кэширования;
- плагины Firewall;
- плагины оптимизации.
Шаг 7. Проверьте файл .htaccess
Для Apache временно переименуйте файл:
mv .htaccess .htaccess_backup
После этого проверьте работу сайта.
Шаг 8. Перезапустите веб-сервер
Для Apache:
systemctl restart apache2
Для Nginx:
systemctl restart nginx
Для PHP-FPM:
systemctl restart php8.2-fpm
Шаг 9. Очистите кэш Cloudflare
В панели Cloudflare:
- Перейдите в раздел Caching.
- Нажмите Purge Cache.
- Выберите Purge Everything.
После очистки проверьте сайт повторно.
Шаг 10. Проверьте заголовки ответа сервера
Получите HTTP-заголовки:
curl -I https://domain.com
Некорректные или слишком большие заголовки могут вызывать ошибку 520.
Частые причины на WordPress
Наиболее часто ошибка 520 возникает из-за:
- LiteSpeed Cache;
- W3 Total Cache;
- WP Rocket;
- Wordfence;
- AIOS Security;
- поврежденного файла .htaccess;
- ошибок PHP после обновления плагинов.
Когда обращаться в техническую поддержку
Обратитесь в техническую поддержку хостинга, если:
- сервер недоступен;
- ошибка появляется после переноса сайта;
- проблема возникает только через Cloudflare;
- журналы содержат ошибки веб-сервера;
- ошибка сохраняется после проверки всех пунктов инструкции.
Рекомендации
- Регулярно обновляйте CMS и плагины.
- Следите за использованием памяти сервера.
- Не блокируйте IP-адреса Cloudflare.
- Используйте актуальную версию PHP.
- Проверяйте журналы ошибок после любых изменений сайта.
Ошибка 520 практически всегда указывает на проблему на стороне сервера или веб-приложения. В большинстве случаев её удаётся устранить после проверки журналов, ресурсов сервера, SSL-сертификата и настроек Cloudflare.