Как исправить 504 gateway time out Nginx

Ошибка при сборке чанков код ошибки 504

Веб-сервер Nginx часто работает не только в качестве самого веб-сервера для отдачи контента, но и в качестве прокси, когда он вступает только посредником. Такая ситуация наблюдается намного чаще, чем можно было бы ожидать. Например, при работе с php-fpm и другими модулями динамических языков.

Именно в таком режиме может наблюдаться ошибка 504 gateway time out Nginx. В нашей сегодняшней статье мы попытаемся разобраться почему она возникает и как с ней бороться. Разберем несколько способов решения и причин.

Что значит 504 gateway time out Nginx?

Как я уже сказал, такая ошибка возникает, когда сервер Nginx работает в режиме прокси. Например, при использовании php-fpm или Apache. Дословно, она означает, что превышено время ожидания ответа от сервера. В нашем случае, превышено время ожидания ответа от php-fpm. Рассмотрим несколько причин такого поведения:

Дальше рассмотрим что можно сделать если вы встретились с ошибкой 504 gateway time out Nginx.

Как исправить 504 gateway time out Nginx?

Нагрузку на процессор можно узнать командой htop:

Естественно, если вы видите, что PHP занимает все процессорное время, то значит проблема в ресурсах сервера. Вы можете покопаться в движке своего сайта, пытаться оптимизировать те или иные моменты, об этом будет отдельная статья или же выбрать более мощный VPS сервер.

fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

Здесь 300 означает 300 секунд, для большинства скриптов, этого будет вполне достаточно, но вы можете еще больше увеличить значение если это нужно. Также ошибка 504 может возникать, когда Nginx используется в качестве прокси для Apache или любого другого веб-сервера, тогда нужно еще настроить время ожидания для прокси. Добавьте эти строки в секцию server:

proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;

sudo systemctl restart nginx

Более подробную информацию иногда можно увидеть в error. log:

Дальше, если проблема именно в php-fpm, вы можете отследить какие скрипты выполняются медленно с помощью встроенной функции slow-log. Для ее активации добавьте следующие строки в конфигурацию вашего пула:

sudo vi /etc/php-fpm. d/www. conf

slowlog = /var/log/php-fpm/www-slow. log
request_slowlog_timeout = 5s

Здесь 5 секунд, означает, что в лог файл будут добавляться скрипты, которые выполняются дольше пяти секунд. Вы можете менять это значение по своему усмотрению. В логе вы сможете увидеть не только сами скрипты, но и трассировку методов, которые привели к проблемам:

Дальше останется только разобраться что с этим делать, например, оптимизировать скрипты или отключить лишние плагины.

Выводы

В этой статье мы рассмотрели как исправить 504 gateway time out Nginx 1.2 7, а также почему может возникнуть эта ошибка. Надеюсь, эта информация была полезной для вас.

Ошибка 504 Gateway Time out — что означает и как исправить

Ошибка 504 Gateway time out. Ты слишком медленный

Ошибка 504 Gateway Timeout — это код состояния HTTP, который означает, что один сервер не получил своевременный ответ от другого сервера, к которому он обращался, при попытке загрузить веб-страницу или выполнить другой запрос браузера.

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

Обратитесь к разделу «Исправление ошибок 504 на вашем собственном сайте», чтобы узнать о некоторых вещах, которые стоит рассмотреть.

Ошибка 504 Gateway Timeout может появиться в любом интернет-браузере, в любой операционной системе и на любом устройстве. Это означает, что можно получить ошибку 504 Gateway Timeout на вашем телефоне или планшете на Android или iPhone, в Safari на Mac, в Chrome на Windows 10 (или 8, или 7,…) и т. д.

Как вы могли увидеть ошибку 504

Отдельные веб-сайты могут настраивать отображение ошибок «тайм-аут шлюза», по другому, но вот наиболее распространенные формулировки, которые вы увидите:

В окне интернет-браузера появляется ошибка 504 Gateway Timeout, как обычную веб-страницу. На странице могут быть знакомые верхние и нижние колонтитулы сайта и английское сообщение, или он может отображаться на полностью белой странице с большой цифрой 504 вверху. Это все одно и то же сообщение, независимо от того, как его показывает веб-сайт.

Причины ошибки 504 Gateway Timeout

В большинстве случаев ошибка 504 Gateway Timeout означает, что другой сервер отвечает столько времени, что его срабатывает выходит отведенное время — «тайм-аут», вероятно веб сервер, которому вы обращаетесь не работает или работает неправильно.

Поскольку эта ошибка обычно является сетевой ошибкой между серверами в Интернете или проблемой с реальным сервером, проблема, не в вашем компьютере, устройстве или подключении к Интернету.

Есть несколько вещей, которые вы можете попробовать, на всякий случай:

Как исправить ошибку 504

Исправление 504 ошибок на вашем сайте

Часто это не ваша вина, но и не пользователь. Начните с проверки того, что ваш сервер может правильно разрешить все домены, к которым вашим приложениям необходим доступ.

Очень большой трафик может привести к тому, что ваш сервер выдаст ошибку 504, хотя 503, вероятно, будет немного более точным.

В частности, в WordPress сообщения 504: Время ожидания истекло иногда возникают из-за поврежденных базы данных. Установите WP-DBManager и попробуйте функцию «Восстановить БД», затем «Оптимизировать БД» и посмотрите, поможет ли это.

Кроме того, убедитесь, что ваш файл HTACCESS правильный, особенно если вы только что переустановили WordPress.

Наконец, рассмотрите возможность обращения в свою хостинговую компанию. Возможно, ошибка 504, которую возвращает ваш веб-сайт, связана с проблемой на их конце, которую они должны будут устранить.

Больше способов увидеть ошибку 504

Ошибка 504 тайм-аута шлюза при получении в Центре обновления Windows создает код ошибки 0x80244023 или сообщение WU_E_PT_HTTP_STATUS_GATEWAY_TIMEOUT.

В программах на базе Windows, которые имеют доступ к Интернету, ошибка 504 может отображаться в небольшом диалоговом окне или окне с ошибкой HTTP_STATUS_GATEWAY_TIMEOUT и / или с запросом истекло время ожидания сообщения шлюза.

Менее распространенная ошибка 504 — время ожидания шлюза: прокси-сервер не получил своевременного ответа от вышестоящего сервера, но устранение неполадок (см. Выше) остается тем же.

Ошибки типа 504 Gateway Timeout

Ряд сообщений об ошибках аналогичен ошибке 504 Gateway Timeout, поскольку все они провляются на стороне сервера. Включают в себя Ошибку 500 Internal Server, Bad Gateway 502 и Unavailable 503 Service.

Существуют также коды состояния HTTP, которые не на стороне сервера, а на стороне клиента, как, например, ошибка 404 Not Found. Также существует несколько других, которые вы можете увидеть на нашей странице HTTP Ошибки кода состояния.

Источники:

https://losst. ru/kak-ispravit-504-gateway-time-out-nginx

https://creditam. ru/stati/oshibka-504

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: