Другое 523Высокая

Ошибка 523 Cloudflare: причины и способы исправления

Ошибка 523 Cloudflare означает, что сервер-источник не отвечает. В статье разбираются основные причины — от падения веб-сервера до блокировки фаерволом — и даётся 5 рабочих способов их устранения.

Обновлено 4 марта 2026 г.
15-30 мин
Средняя
FixPedia Team
Применимо к:Cloudflare (любая версия)Nginx 1.18+Apache 2.4+PHP-FPM

Что означает ошибку 523

Ошибка 523 Cloudflare (также известная как 523 Origin Error) возникает, когда Cloudflare устанавливает TCP-соединение с вашим origin-сервером, но не получает HTTP-ответ в течение 100 секунд.

Ошибка отображается как:

Error 523: Origin Error

Проблема всегда находится на стороне вашего сервера, а не в сети Cloudflare. Cloudflare ждёт ответа (например, заголовков) от вашего веб-сервера, но таймаут истекает.

Интерфейс панели Cloudflare: раздел Speed → Optimization с настройками Rocket Loader и Origin Error Page Threshold

Интерфейс панели Cloudflare: раздел Speed → Optimization с настройками Rocket Loader и Origin Error Page Threshold

Причины возникновения

  1. Падение или зависание веб-сервера. Сервис Nginx или Apache упал или не обрабатывает запросы из-за нехватки ресурсов (CPU, RAM).
  2. Длительное выполнение скрипта. PHP-скрипт или другое приложение выполняет долгую операцию (обработка файла, сложный запрос к БД) и превышает лимиты времени.
  3. Блокировка IP Cloudflare. Фаервол (iptables, csf) или модули безопасности (fail2ban, ModSecurity) ошибочно заблокировали IP-адреса Cloudflare. Сервер не может отправить ответ.
  4. Неправильная конфигурация прокси. В настройках виртуального хоста не указаны корректные таймауты для proxy_pass или FastCGI/PHP-FPM.
  5. Проблемы с сетевым интерфейсом. Сервер перегружен сетевыми подключениями, и ядро не обрабатывает пакеты от Cloudflare в срок.
  6. Ошибка в приложении. Критическая ошибка в коде (например, бесконечный цикл) не позволяет приложению отправить ответ.
Фрагменты конфигурационных файлов Nginx и Apache с параметрами таймаутов proxy_read_timeout и Timeout

Фрагменты конфигурационных файлов Nginx и Apache с параметрами таймаутов proxy_read_timeout и Timeout

Способы решения

Способ 1: Диагностика прямого доступа к серверу

Сначала исключите проблемы сети Cloudflare.

  1. Узнайте IP-адрес origin-сервера (в панели хостинга или через ip a).
  2. Подключитесь к серверу напрямую, обойдя Cloudflare:
    • Временно измените DNS-записи в Cloudflare на DNS only (серые облака).
    • Или добавьте запись в файл hosts на вашем компьютере, указав домен и IP сервера.
  3. Проверьте доступность:
    curl -I http://ваш-домен.ru
    
  4. Результат:
    • Сайт загружается — проблема в настройках Cloudflare или его взаимодействии с сервером.
    • Сайт не загружается — проблема на уровне сервера (веб-сервер/приложение).

Способ 2: Настройка параметров Cloudflare

Если прямой доступ работает, настройте Cloudflare.

  1. Отключите Rocket Loader в панели Cloudflare → Speed → Optimization.
  2. Временно отключите Argo Smart Routing, если он включён.
  3. Увеличьте таймауты:
    • Перейдите в Speed → Optimization.
    • Найдите "Origin Error Page Threshold" и увеличьте значение (например, до 300 секунд). Это снизит частоту показа страницы ошибки.
    • Не изменяйте основной таймаут Cloudflare — он фиксирован (100 секунд).
  4. Проверьте, не включён ли Development Mode. Он отключает кэширование, но не влияет на таймауты.

Способ 3: Анализ логов сервера и приложения

Самая частая причина — ошибки в логах. Подключитесь к серверу по SSH.

  1. Проверьте логи веб-сервера на наличие таймаутов.
    • Nginx: /var/log/nginx/error.log
    sudo tail -f /var/log/nginx/error.log | grep -E "timeout|upstream"
    
    Ищите: upstream timed out (110: Connection timed out).
    • Apache: /var/log/apache2/error.log
    sudo tail -f /var/log/apache2/error.log | grep -i timeout
    
  2. Проверьте логи PHP-FPM (если используется PHP):
    sudo tail -f /var/log/php-fpm/error.log
    # или для php-fpm 7.4
    sudo tail -f /var/log/php7.4-fpm.log
    
    Ищите: Maximum execution time, Allowed memory size.
  3. Проверьте логи приложения (Laravel: storage/logs/laravel.log, WordPress: через плагины или системные логи).

Способ 4: Настройка таймаутов в веб-сервере

Увеличьте таймауты после выявления проблемы (например, долгие запросы к БД).

Для Nginx

location / {
    proxy_pass http://your_backend;
    proxy_connect_timeout 60s;
    proxy_send_timeout 60s;
    proxy_read_timeout 300s;  # Увеличьте до 300 секунд
    proxy_buffering off;
}

Или для PHP-FPM:

fastcgi_read_timeout 300s;
fastcgi_send_timeout 300s;

Проверьте конфигурацию (sudo nginx -t) и перезагрузите Nginx (sudo systemctl reload nginx).

Для Apache

Timeout 300
ProxyTimeout 300  # Если используется mod_proxy

Способ 5: Проверка фаервола и безопасности

Cloudflare использует диапазоны IP. Если фаервол их блокирует, соединение оборвётся.

  1. Получите актуальный список IP Cloudflare: https://www.cloudflare.com/ips/
  2. Добавьте правила в фаервол. Пример для iptables:
    sudo iptables -I INPUT -p tcp -s 173.245.48.0/20 --dport 80 -j ACCEPT
    sudo iptables -I INPUT -p tcp -s 173.245.48.0/20 --dport 443 -j ACCEPT
    # Повторите для всех подсетей из списка Cloudflare
    
  3. Проверьте fail2ban: Убедитесь, что Cloudflare не попадает в бан. Проверьте jail-конфигурацию для веб-сервера.
  4. Проверьте ModSecurity: Временно отключите для диагностики:
    SecRuleEngine Off
    

Профилактика

  • Мониторинг. Настройте внешний мониторинг (UptimeRobot) и оповещения о падении сервера.
  • Оптимизация приложения. Профилируйте медленные запросы к БД (slow_query_log), кэшируйте тяжелые операции (Redis, Memcached).
  • Корректные лимиты PHP. В php.ini:
    max_execution_time = 60
    max_input_time = 60
    memory_limit = 256M
    request_terminate_timeout = 120
    
  • Регулярное обновление. Следите за обновлениями веб-сервера, PHP и фреймворков.
  • Нагрузочное тестирование. Проводите тесты (ab, wrk) после изменений, чтобы убедиться в стабильности.
  • Настройки Cloudflare. Используйте "Cache Level: Standard" для динамических сайтов. Включите "Brotli" для сжатия.
Схема потока запроса от пользователя через Cloudflare к origin-серверу с точкой таймаута ошибки 523

Схема потока запроса от пользователя через Cloudflare к origin-серверу с точкой таймаута ошибки 523 :::

Часто задаваемые вопросы

В чём разница между ошибками 522 и 523 Cloudflare?
Может ли ошибка 523 возникать из-за низкой производительности базы данных?
Нужно ли отключать Cloudflare для диагностики?

Полезное

Проверьте доступность origin-сервера
Настройте параметры Cloudflare
Проанализируйте логи веб-сервера и приложения
Проверьте фаервол и безопасность
Оптимизируйте приложение и увеличьте таймауты

Эта статья помогла вам решить проблему?