Что значит 504. Компьютерная помощь

Поступило сообщение — ошибка 504. Это говорит о том, что шлюз долго отвечал или завершился раньше времени.

Причины 504 ошибки.

Рассмотрим основные причины. Это может быть нехватка оперативной памяти на сервере, проблемы со скриптами на вашем сайте, проблемы с настройкой и т. д. Элементарная причина появления ошибки 504 — перегрузка сервера, в результате чего создается очередь из запросов. Из-за ожидания в очереди запрос не поступает на обработку за отведенное время и сбрасывается.

Смена площадки для сайта поможет решить проблему лишь на некоторое время. Насущная рекомендация — заняться оптимизацией ( , скриптов, запросов SQL). Следует также подумать об увеличении ресурсов сервера, поиске другого хостинга. Рекомендуется обратиться в службу консультации вашего хостинга. Но это лучше сделать после оптимизации скриптов сайта.

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

Решение ошибки.

Но это более глобальные задачи. А пока попробуйте увеличить время ожидания и выполнения для ряда скриптов. Это поможет устранить пресловутую ошибку 504. По умолчанию время выполнения в настройках сервера установлено 30с.

Чтобы увеличить его, можно применить set_time_limit. Только не всегда удается задействовать эту схему из-за ограничений на хостинге. Если PHP запущен в так называемом безопасном режиме, то нужно в конфигурации php увеличить время работы скрипта(функция max_execution_time). Когда же не удается снять запрет на использование set_time_limit, попробуйте запустить данную функцию (max_execution). Наконец, можно в конфигурации сервера увеличить время работы скрипта. Для этого прописать следующее:

  • proxy_send_timeout 60; (ожидание для процесса передачи);
  • proxy_read_timeout 60; (ожидание для процесса чтения).

Ставим 60 с (120) вместо 30с стоящих по умолчанию.

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

Добрый день!

При заходе на сайт выдается ошибка 504 Gateway Timeout Error . Как ее исправить?

Ответ

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

Существует несколько способов для решения проблемы.

Способ 1. Перезагрузка страницы в веб-браузере

Самое первое, что Вы должны предпринять, — это попробовать через минуту или две перезагрузить страницу в своем браузере. Возможно хостинг в данный момент перегружен, и сайт быстро вернется в работу. Также можно попробовать открыть ту же страницу в каком-либо другом браузере. Кроме того, можно воспользоваться специальным онлайн-сервисом , показывающем недоступность сайта исключительно для вас или для всех пользователей. Если сервис выдал сообщение “site.ru looks down from here ”, то действительно сайт недоступен для всех.

Способ 2. Отключение параметров прокси

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

Способ 3. Проверка службы DNS

Ошибка 504 Gateway Timeout Error также может быть вызвана проблемами с DNS -службой, а именно на сервере, когда, например, домен не преобразован в корректный IP . Часто такое случается, если Вы только что перенесли свой сайт с локального компьютера на хостинг. В таком случае необходимо дождаться распространения DNS -данных по всей Сети (обычно до 48 часов).

Кроме того, проблемы с DNS могут быть и локального характера, т.е. на Вашем компьютере. Для их решения рекомендуется очистить DNS -кэш. Например, для операционный систем Windows для этого используют команду ipconfig /flushdns . В macOS можно применить dscacheutil -flushcache .

Наконец, Вы вправе на какое-то время изменить DNS -сервера Вашего хостинга на публичные (например, 8.8.8.8 или 8.8.4.4 от Google ).

Способ 4. Временное отключение CDN

Очередная причина возникновения ошибки 504 Gateway Timeout Error — проблемы с сетью доставки контента (CDN ). Если Вы используете этот сервис, можно временно его отключить. Часто для его подключения на сайте WordPress используют бесплатный плагин плагин CDN Enabler . Для отключения CDN на своем сайте достаточно будет просто деактивировать его и проверить работу сайта. Если после этого стало невозможным попасть в админ-панель, необходимо соединится с сервером Вашего хостинга (например, через ), перейти в каталог плагинов и переименовать папку cdn-enabler . В итоге Ваше соединение со службами CDN будет временно отключено. Аналогичная ситуация и с плагином WP Rocket или любым другим, взаимодействующим с CDN .

Иногда ошибка 504 может появляться вследствие использования прокси-серверов типа Cloudflare или Sucuri . Например, для первого сервиса существует два типа ошибки 504 .

Вариант 1

В этом случае проблема действительно со службой Cloudflare . Для ее решения нужно обратится в техподдержку сервиса.

Вариант 2

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

Способ 5. Проверка хостинга

Проблема с сервером хостинга является довольно распространенной причиной возникновения ошибки 504 Gateway Timeout Error . Дело в том, что у каждой компании-хостера эта услуга отличается типом оборудования и используемым программным обеспечением. Маломощность оборудования или неправильная настройка той или иной серверной части также может привести в возникновению ошибки 504 . Если все вышеизложенные способы не помогли решить проблему, то вероятнее всего она действительно кроется в работе Вашего хостинга. В таком случае необходимо с техподдержкой выяснять конкретные причины ее возникновения, которая в большинстве случаев быстро разберется с причиной ошибки. В противном случае можно подумать о смене хостинга.

Способ 6. Проверка и выявление спама, вирусов и DDoS-атак

Еще одна причина возникновения ошибки 504 — это наличие спама, вируса или DDoS -атаки, что может привести к перегрузке и отказу сервера. В таком случае необходимо, во-первых, ознакомится с предоставляемыми компанией-хостингом инструментами для борьбы с вышеперечисленными угрозами. Часто в админ-панели хостинга присутствуют антивирус, а также включение защиты от DDoS -атак. Что касается спам-комментариев на сайте WordPress, то с этим довольно эффективно борются соответствующие плагины (например, самый популярный среди пользователей Akismet Anti-Spam ). Для выявления угроз обычно изучают статистику сервера, статистику поисковых систем на предмет подозрительных IP -адресов.

Способ 7. Проверка активных тем и плагинов

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

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

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

Как можно увидеть ошибку 504

Отдельным сайтам разрешено настраивать отображение ошибки Gateway Timeout . Вот несколько распространенных способов вывода подобной ошибки:

504 Gateway Timeout HTTP 504 504 ERROR Gateway Timeout (504) HTTP Error 504 - Gateway Timeout Gateway Timeout Error

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

Помните, что ошибка 504 Gateway Timeout и 502 Bad Gateway ngin может появиться в любом браузере, операционной системе и на любом устройстве.

Причины возникновения ошибки 504 Gateway Timeout

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

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

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

  1. Перезагрузите веб-страницу, нажав кнопку обновление / перезагрузка, в F5 или повторив URL-адрес из адресной строки.

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

  1. Перезапустите все сетевые устройства. Временные проблемы с модемом, маршрутизатором, коммутаторами или другим сетевым оборудованием могут вызывать ошибку 504 Gateway Timeout . Простой перезапуск этих устройств может помочь.

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

  1. Проверьте настройки прокси-сервера в своем браузере или приложении. Убедитесь, что они верны. Неправильные настройки прокси-сервера могут вызвать 504 ошибку.

Подсказка . Смотрите Proxy.org обновленный, проверенный список прокси-серверов, которые можно использовать.

Примечание . Большинство компьютеров не имеют настроек прокси-сервера, поэтому, если ваши настройки пусты, пропустите этот шаг.

  1. Измените DNS-сервер. Возможно, ошибка 504 Gateway Timeout , которую вы видите, вызвана проблемой с DNS-сервером , который вы используете.

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

Подсказка . Если не все сетевые устройства получают ошибку HTTP 504 или 502 error Bad Gateway , но все они находятся в одной сети, изменение DNS-сервера не сработает. Если это похоже на вашу ситуацию, переходите к следующей идее.

  1. Если изменений не произошло, обратитесь к сайту. Это единственное, что вы можете сделать. Велика вероятность, что администраторы сайта уже работают, чтобы исправить первопричину ошибки 504 Gateway Timeout .

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

Подсказка . Если начинает казаться, что сайт выдает 504 ошибку для всех, поищите в Twitter в режиме реального времени информацию о недоступности сайта. Лучший способ сделать это — найти #websitedown в Twitter . Например, если Facebook может быть недоступен, выполните поиск по тегу #facebookdown .

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

Регулярно проверяйте сайт. Без сомнения, он снова начнет работать.

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

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

Большие объемы трафика могут привести к тому, что ваш сервер будет выдавать ошибку 504 . Хотя 503 или ошибка 502 Bad Gateway будет более вероятна.

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

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

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

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

Ошибка Gateway Timeout при получении в Windows Update генерирует код ошибки 0x80244023 или сообщение WU_E_PT_HTTP_STATUS_GATEWAY_TIMEOUT .

В программах на базе Windows , которые изначально обращаются к интернету, ошибка 504 может отображаться в небольшом диалоговом окне или окне с ошибкой HTTP_STATUS_GATEWAY_TIMEOUT и/или сообщение The request was timed out waiting for a gateway (истекло время ожидания запроса для шлюза ).

Менее распространенная ошибка 504 — это Gateway Time-out: The proxy server did not receive a timely response from the upstream server (прокси-сервер не получил своевременного ответа от вышестоящего сервера ), но поиск и устранение неисправностей (указанных выше ) продолжается.

В этой статье описаны причины возникновения ошибки 504 Gateway Timeout (time out).

Часто ошибку можно видеть на серверах, где установлен nginx в качестве фронтенда и Apache в качестве бэкенда. И многие думают, что проблема в nginx. Это не так.

504 Gateway Timeout - значит, что клиентский запрос nginx передал апачу, а апач не смог в установленный лимит времени вернуть HTTP-ответ. Немного подробнее о взаимоотношениях nginx’а и апача в статье про .

Почему Apache не смог ответить?

Скорее всего дело в возросшей нагрузке на сайт, при которой Apache не успевает отдавать HTTP-ответы, и новые запросы встают в очередь. Клиенты «висят» в очереди, но за приемлемое время их так и не успевают обслужить, поэтому соединения сбрасываются.

Чтобы решить проблему, можно добавить ресурсов серверу, в частности оперативной памяти, и увеличить количество процессов httpd (Apache). Другой вариант - оптимизировать работу скриптов сайта, чтобы они выполнялись быстрее. Если вы на обычном виртуальном хостинге, то без усилий администрации ситуация не улучшится. Если проблема не решается, надо искать другого провайдера.

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

Варианты решения: увеличить значение параметра PHP max_execution_time или облегчить скрипт.

Критические замечания к статье приветствуются.

Комментарии

Гость 23.01.2010 17:49

а можно попроще написать? Ну прям ваще подробно. Как и куда нажать, чтоб эту ошибку исправить, а то я блондинка))

Гость 07.02.2010 19:20

Проблема непростая. Если не разбираетесь, то у вас два варианта:

1) На удачу переехать к другому хостеру / на другой сервер / на дорогой тариф. Не факт, что проблема решится, но шансы неплохие.

2) Найти специалиста, который всё осмотрит и скажет, нельзя ли что-то сделать с сайтом, чтобы ошибок не было. Есть вероятность, что специалист в конце концов посоветует вам сменить хостинг.

Гость 29.11.2010 14:23

А специалист просто уберет апач нафиг и оставит один gninx+ fastcgi php.

Мика 25.05.2010 21:54 http://www.mikafan.ru

У меня постоянно такая ошибка 504 возникает - раз в день точно, не знаю уже что и делать((Переехал к другому хостеру - все равно одно и то же. Помогает только перезагрузка ВПС-сервера. Движок сайта - Datalife Engine (DLE) - может есть какое-то решение для него? Кто-нибудь знает?

BoBka_altRUist 24.07.2014 09:38

если у вас VPS значит скорее всего валится из-за того что не хватает оперативной памяти, часто вижу такую проблему на сайтах которые на движках типа DLE, Drupal, Wordpress ...
перейдите на обычный хостинг, и не надо брать VPS с памятью 1/2 Гб

Гость 23.01.2011 14:34 http://gamed.info

У меня тоже аналогичная проблема с nginx. Позволю себе не согласиться с автором статьи. Утверждение что в таком случае всегда виноват Apache мне кажется не всегда верным. Например у меня, возникает эта ошибка довольно часто0, но если в это время зайти напрямую в Apache, то Apache летает. И даже если зайти на страницу статистики nginx, то она тоже тормозит и еле грузиться, хотя тут уж Apache точно не причем. Может кто посоветует, куда копать?

Рома Волков 25.11.2011 04:08

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

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

не забывайте если у вас 10к посещалки и лагает тормозит то тут логичнее удалить нах все и сайт и хостинг и улететь на луну =))) _________ просто идет нагрузка на сервер, либо вас ddos-ят либо вы юзаете крон, либо у вас высокая посещаемость.

а в случае dle (часто там эт косяк) то это скорее и за вашего скрипта граббинга+крон =))

teerex 20.02.2011 01:06 http://teerex.intome.ru/blog

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

Увеличение времени ожидания nginx при проксировании.
Для работы некоторых скриптов действительно требуется увеличение времени ожидания и выполнения, но таких немного.
Для изменения времени ожидания в конфиг надо добавить следующие параметры (лучше вставлять в контекст location):

proxy_send_timeout 60; # время ожидания при передаче запроса
proxy_read_timeout 60; # время ожидания при чтении ответа

Время указывается в секундах, по-умолчанию 60, т.е. 1 минута.

Но будьте готовы, что не каждый хостер пойдёт на это, т.к. увеличение лимитов = увеличение расхода ресурсов.

Djane 19.03.2011 00:14 http://djane.com.ua

данная ошибка является что ли больше кривыми настройками апач, если очень много обращений?

teerex 24.04.2011 02:44 http://teerex.intome.ru/blog

может быть дело и в настройке апача.
но чаще всего дело в тормозных скриптах/серверах.

32bit 01.04.2011 14:25 http://32bit.pp.ua

а может из за 504-й ошибки выкинуть из индексации поисковиком?

teerex 24.04.2011 02:46 http://teerex.intome.ru/blog

Может.
Если ошибка будет висеть довольно долго (по крайней мере больше часа).
Причём выкидываются конкретные страницы, на которых была ошибка.

Ошибка под номером 504 наиболее распространена среди сайтов на просторах интернета. В подавляющем большинстве случаев пользователи видят надпись «504 Gateway Time-out (time out)» на белом фоне и уходят с сайта, не разбираясь в причинах потери работоспособности ресурса. Куда более неприятно видеть код 504 владельцам сайта, особенно если неизвестно какими причинами была вызвана ошибка и что нужно делать, чтобы её исправить.

Ошибка 504 означает, что сервер, на котором расположен сайт, не успевает обработать запрос и вернуть в заданный лимит времени HTTP ответ пользователю . Чаще всего такая ситуация возникает при большой нагрузке на сервер: не имея возможности вовремя обрабатывать все запросы, сервер прерывает необработанные соединения по истечении установленного лимита времени. Если это происходит, вместо загрузки сайта пользователь видит на странице ошибку «504 Gateway Time-out».

Техническая сторона вопроса

В подавляющем большинстве случаев проблема с кодом 504 возникает:

  • если на сервере в качестве бэкенда установлен Apache;
  • при этом в качестве фронтенда установлен nginx.

Такое сочетание чаще всего генерирует ошибку 504 с примечанием Gateway Time-out. В такой связке nginx выступает в качестве чего-то вроде распределителя запросов пользователя, и они сначала попадают к нему, а не напрямую в Apache. И если из-за высокой нагрузки сервер Apache не смог вовремя ответить, nginx пошлёт пользователю соответствующий ответ в виде кода 504.

Из-за чего появляется ошибка 504

Появление ошибки 504 характерно для серверов Apache в случае большой нагрузки. Такие сервера имеют особенность: при поступлении большого количества запросов они не успевают обрабатываться. Всем пользователям, у которых браузеры не получили HTTP-ответ от сервера, будет показана ошибка 504 Gateway Time-out.

Сталкиваясь с проблемой большой нагрузки, Apache не сразу начинает отдавать код 504. Сначала все запросы, которые не могут быть обработаны прямо сейчас, выстраиваются в очередь. При превышении лимита времени на ожидание HTTP-ответа соединение разрывается, и только тогда появляется ошибка. Со стороны пользователя сайт будет пытаться загрузиться несколько секунд, но фактически загрузка не начинается, поскольку сервер не отвечает.

Ошибка на стороне скриптов

Иногда код «504 Gateway Tme-out» вызывает не чрезмерная нагрузка, а неправильная настройка скриптов на сайте . Любому скрипту отводится определённый отрезок времени на выполнение. На практике, по ряду причин, этого времени скрипту может не хватить.

Обычно скриптам не хватает времени на загрузку в том случае, если они располагаются на стороннем сервере. В свою очередь, такие сервера очень часто сами находятся под огромной нагрузкой (из-за того, что сотни и тысячи сайтов при каждом заходе пользователей подгружают определённый код). Если отведённое время истекает, но скрипт так и не получает ответ от сервера, он также может выдать ошибку 504.

Задержка в процессе выполнения скриптов на сайте может вызываться и другими причинами:

  1. Если скрипту для работы необходимы внешние ресурсы (к примеру, база данных на стороннем сервере), которая на данный момент недоступна.
  2. Если скрипт работает не напрямую, а с установкой соединения через прокси-сервер . В случае недоступности прокси-сервера или превышения времени ожидания ответа скрипт также выдаст код 504.
  3. Скрипт загружает данные со сторонних серверов, которые на данный момент недоступны .

Как решить проблему 504

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

  1. Попробовать определить основные источники нагрузки на сервере . Нужно найти, какие именно запросы обрабатываются дольше всего и приводят к возникновению очереди и последующей ошибки 504, и оптимизировать эти места.
  2. Оптимизировать все скрипты . Желательно, чтобы загружаемые сайтом скрипты физически находились на том же сервере, что и сам сайт, или по крайней мере на физическом пространстве, находящемся под контролем владельца сайта. Если оптимизировать скрипты, настроить время их выполнения и выделить необходимые для этого серверные ресурсы, ошибка 504 перестанет возникать из-за скриптов.
  3. Можно пойти простым путём: просто увеличить ресурсы сервера , если есть такая возможность. Увеличение оперативной памяти, количества процессов httpd для Apache и другие меры повышения производительности приведут к тому, что серверу снова станет хватать ресурсов для выполнения запросов. Правда, подобное решение может являться лишь временной мерой, и с ростом нагрузки отсутствие должной оптимизации опять заявит о себе.

В том случае, если сайт с достаточно высокой посещаемостью (или требующий много ресурсов) располагается на обычном виртуальном хостинге, мощностей может элементарно не хватать. Некоторые хостеры присылают своим клиентам уведомления о превышении допустимой нагрузки, некоторые – нет. Следует посмотреть логи и запросить нужную информацию о технической поддержке хостинга. Вполне возможно, что с сайтом всё в порядке, просто из-за роста посещаемости пора переходить на VPS, VDS и другие тарифы и услуги с существенно большими ресурсами.

Видео

Из видео вы узнаете, как самостоятельно исправить ошибку «504 Gateway Time-out (time out)».

Не получили ответ на свой вопрос? Предложите авторам тему.



Есть вопросы?

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: