Ошибка 504


Ответ

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

Ошибка 504 Gateway Timeout Error

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

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

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


Главная страница сайта http://downforeveryoneorjustme.com

Способ 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 на своем сайте достаточно будет просто деактивировать его и проверить работу сайта. Если после этого стало невозможным попасть в админ-панель, необходимо соединится с сервером Вашего хостинга (например, через FTP-протокол), перейти в каталог плагинов и переименовать папку cdn-enabler. В итоге Ваше соединение со службами CDN будет временно отключено. Аналогичная ситуация и с плагином WP Rocket или любым другим, взаимодействующим с CDN.

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

Вариант 1


Ошибка 504 Gateway Timeout в Cloudflare

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

Вариант 2

Ошибка 504 Gateway Timeout в Cloudflare

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

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

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


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

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

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

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

wpschool.ru

Что означает ошибка «504 Gateway time out»?


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

Ошибка 504«>

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

Причины появления ошибки

Теперь, насколько это возможно максимально просто, затронем технический аспект. Итак, у нас появляется ошибка 504. Что значит такое сообщение с точки зрения взаимодействия терминала пользователя и удаленного сервера?

Ошибка 504«>

Следующее объяснение может показаться несколько сложным для восприятия, тем не менее здесь все просто. Дело в том, что такие сбои в основном проявляются при взаимодействии платформ Apache и nginx, когда первая установлена в качестве конечного сервера, а вторая — в качестве средства обработки входящих запросов. Получается, что пользовательский запрос адресуется не напрямую к Apache, а проходит предварительное согласование с nginx, после чего производится отправка на сервер, установленный в качестве бэкэнда.


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

Код 504 (ошибка): как с этим бороться?

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

Ошибка 504«>

Как правило, это либо кнопка «Обновить», либо использование функциональной клавиши F5. Такое правило действует для всех браузеров без исключения. Возможен, правда, более долгий вариант, когда связь является нестабильной. Очень может быть, что в данном случае придется перезагрузить всю систему или даже маршрутизатор (в частности, при использования доступа в Интернет через Wi-Fi-подключение).

Кроме всего прочего, проблемы могут быть связаны и с чрезмерной нагрузкой на сервер или исполняемыми на нем скриптами. Тут уж ничего не поделаешь – придется ждать, пока нагрузка спадет. Кстати, в большинстве слуачев такие ситуации очень часто проявляются, когда на сервер осуществляется так называемая DDoS-атака, вследствие чего сервер просто не успевает обрабатывать огромное количество одновременно поступающих запросов.


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

Проблемы при инсталляции приложений

Однако же и это еще не все. Достаточно часто может появляться ошибка при установке (код 504), когда приложение или программа инсталлируется непосредственно из сети Интернет. В данном случае дистрибутив не скачивается на винчестер, а находится на удаленном сервере, с которого и производится установка.

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

Ошибка 504«>

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

Заключение


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

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

www.syl.ru

Если сервер, на котором располагается ваш ресурс, перегружен (это происходит вследствие исчерпывания лимита трафика), он выдает пользователю сообщение: «Ошибка 504 gateway time out». В переводе на русский это означает: «время ответа шлюза вышло, шлюз не отвечает». Возникает ситуация, когда Apache чисто физически не может обработать все http-запросы, и они встают в очередь. Однако проходит лимитное время, и приходит сообщение о том, что запрос не обработан.


ошибка 504

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

Если же вы оплачиваете свой хостинг, то следует сразу же обратиться за помощью в саппорт. Служба поддержки обязана проверить ваш сайт на наличие каких-то неисправностей и при возможности «отремонтировать» его. Не стоит пренебрегать такой возможностью. «Дырок», которые необходимо залатать, может быть больше, чем вы думаете. Некоторые хостинг-провайдеры осуществляют техническую поддержку по телефону. Данный вид помощи очень полезен, если вы в первый раз столкнулись с такими техническими проблемами, как ошибка 504. Благодаря такому саппорту вы сможете научиться устранять их самостоятельно, без посторонней помощи.

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


о может быть связано с запросом сторонних ресурсов, либо он сам в это время занимается другим делом. Например, выстраивает поисковый индекс.
Для удаления неисправности вы можете пойти двумя путями:
1) облегчить скрипт путем его оптимизации;
2) увеличить значение PHP-параметра max_execution_time.
Еще раз хотелось бы затронуть вопрос о технической поддержке хостинг-провайдера, на котором расположен ваш сайт. Безусловно, у каждого он свой, но обязанности саппортов для всех обязательны. Бывают такие случаи, когда вопросы, отправленные в службу поддержки, остаются без внимания. Особенно если это касается каких-нибудь лагов. Например, возникает та же самая ошибка 504. В этом случае меняйте хостинг. Если начнутся более серьезные проблемы, то вряд ли вы сможете рассчитывать на их помощь.

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

Вот и все, что хотелось вам рассказать о таком явлении, как ошибка 504. Пускай она встречается вам как можно реже!

fb.ru

Причины 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) сервера. Но это задачи хостинга. Надеемся, что наши рекомендации вам пригодятся в работе.

computest.ru

Ошибка 504

Нет ничего более раздражающего, чем появление белого экрана с ошибкой при обращении к WordPress сайту. Некоторые из распространенных ошибок, с которыми вы могли сталкиваться ранее: белый экран смерти, ошибка установки соединения с базой данных и т.д. Для большинства блогов, а также сайтов, связанных с электронной коммерцией, появление таких ошибок приводит к потере дохода, поскольку посетители сразу покидают такой ресурс, а клиенты не могут совершить покупки. Сегодня мы рассмотрим ошибку 504 Gateway Timeout Error, а также дадим рекомендации по поводу того, как справиться с ней на своем WordPress сайте. Читайте далее о причинах этой ошибки и о том, как предотвратить ее появление.

Почему появляется 504 Gateway Timeout Error?

Перед тем, как мы рассмотрим саму ошибку, важно понять, из-за чего она появляется. Всякий раз, когда вы запускаете свой браузер и посещаете сайт, он передает запрос обратно на сервер, на котором размещен. Затем веб-сервер обрабатывает запрос и отправляет вам запрашиваемые ресурсы вместе с HTTP-заголовком. Этот заголовок содержит один из многочисленных кодов состояния HTTP, который позволяет понять, все ли в порядке или что-то пошло не так. Далеко не все коды состояния плохие. К примеру, код состояния 200 говорит о том, что все в порядке.

Существует много различных кодов ошибок 500 (500, 501, 502, 503, 504 и т.д.), которые имеют разное значение. Они указывают, что запрос был принят, но сервер не смог выполнить его.

В данном случае ошибка 504 означает, что «для сервера, работающего в качестве шлюза, вышло время ожидания ответа от другого сервера». Код возвращается, когда есть два сервера, участвующих в обработке запроса, и время ожидания ответа от второго сервера со стороны первого сервера истекло (RFC 7231, раздел 6.6.5).

Ошибка 504

Варианты ошибки 504 Gateway Timeout Error

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

  • “504 Gateway Timeout”
  • “504 Gateway Timeout NGINX”
  • “NGINX 504 Gateway Timeout”
  • “Gateway Timeout Error”
  • “Error 504”
  • “HTTP Error 504”
  • “HTTP Error 504 – Gateway Timeout”
  • “HTTP 504”
  • “504 Error”
  • “Gateway Timeout (504)
  • “504 Gateway Time-out – The server didn’t respond in time”

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

С чего следует начать решение проблем, если вы столкнулись с ошибкой 504 Gateway Timeout Error на своем WordPress сайте? Не имея контекста, достаточно сложно понять, что делать в первую очередь. Как правило, ошибку вызывают проблемы с сетевым подключением и проблемы с сервером, на котором расположен сайт. Однако ошибка может быть следствием проблем на стороне клиента или даже результатом использования стороннего плагина. Мы немного углубимся в этот вопрос. Давайте ознакомимся с популярными причинами появления ошибки, а также рассмотрим то, как исправить ее.

  1. Попробуйте перезагрузить страницу.

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

Еще одна вещь, которую вы можете сделать – это проверить статус вашего сайта на downforeveryoneorjustme.com. Этот сайт подскажет вам, вышел ли сайт из строя только у вас или же у всех посетителей. Инструмент проверяет код состояния HTTP, который возвращается сервером. Если код отличается от 200, то в таком случае вы увидите указатель Down (т.е. сайт «лежит» для всех).

  1. Отключите параметры прокси.

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

Ошибка 504

  1. Проблемы с DNS.

Ошибка 504 gateway timeout может быть вызвана проблемами с DNS. Такая ошибка может возникать с двух сторон. На стороне сервера она происходит, к примеру, когда домен не преобразован в корректный IP. Если вы только что перенесли свой сайт WordPress на новый хостинг, то важно дождаться распространения DNS. Обычно это занимает до 24 часов. Все зависит от значения TTL ваших DNS-записей. Вы можете использовать бесплатный инструмент, такой как DNSMap, чтобы проверить, распространились ли ваши DNS по всему миру.

Ошибка 504

Вторая проблема с DNS связана уже с клиентской стороной. В этом случае вы можете очистить свой локальный DNS кэш. Это похоже на очистку кэша браузера.

В Windows просто откройте командную строку и введите следующее:

ipconfig /flushdns

Вы должны увидеть сообщение «Successfully flushed the DNS resolver Cache».

Ошибка 504

В macOS введите следующее в терминал:

dscacheutil -flushcache

Примечание: на Mac нет сообщений об успешном завершении.

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

  1. Временно отключите CDN

Также проблема может связана с CDN (сетью доставки контента). Если вы используете стороннего CDN провайдера, вы можете просто временно отключить ваш CDN. К примеру, нам нравится бесплатный плагин CDN Enabler. Если вы используете его, вы можете просто отключить плагин, чтобы проверить работу сайта. Перестали попадать в консоль WordPress после этого? В таком случае войдите на сайт через SFTP и переименуйте папку с плагином в cdn-enabler_old. В итоге ваше CDN соединение будет временно отключено. То же самое касается плагина WP Rocket или любого другого плагина, который подцеплялся к CDN.

Иногда эта ошибка может быть следствием использования прокси-сервисов, таких как Cloudflare или Sucuri, поскольку у них есть дополнительные файрволы. Большинство из них кэшируют коды состояния 500, когда они возвращаются вашим исходным сервером. Мы заметили, что это время от времени происходит на бесплатном тарифе Cloudflare. К сожалению, поскольку Cloudflare является полным прокси-сервисом, быстрого способа его отключения не существует.

Однако, прежде чем грешить на Cloudflare, важно знать, что есть два типа ошибки 504:

504 Gateway Timeout в Cloudflare (вариант 1)

Ошибка 504

Если вы видите следующую страницу, то в данном случае проблема на стороне Cloudflare. Обратитесь к ним в поддержку. Либо проверьте их страницу со статусом. Скорее всего, они уже уведомлены о данной проблеме и работают над ней.

504 Gateway Timeout в Cloudflare (вариант 2)

Ошибка 504

Если вы видите следующую страницу, то это проблема с вашим хостом WordPress (исходный сервер), и в этом случае вам нужно воспользоваться рекомендацией под номером 5.

  1. Проблемы с сервером (проверьте ваш хост)

Проблемы с сервером – одна из распространенных причин, почему пользователи сталкиваются с ошибками 504 на своих WordPress-сайтах. Говоря простым языком, Nginx или Apache ожидают ответа от второй стороны, и время ожидания истекло.

Ошибки 504 чаще всего встречаются на сайтах с высоким трафиком и на сайтах электронной коммерции (с установленным WooCommerce, к примеру), у которых много некэшируемых запросов. Это может вызывать перегрузку сервера. Однако мы сталкивались с такими ошибками на разных типах сайтов, в том числе и на обычных блогах. Многие хостинги отвечают стандартными фразами по типу «вам нужно перейти на более дорогостоящий тарифный план, чтобы исправить эту проблему». И пусть это обычно помогает решить данную проблему, зачастую это не является необходимым.

Хостинги, такие как, к примеру, Kinsta, используют контейнеры LXD для каждого сайта. Это означает, что каждый сайт размещается в своем изолированном контейнере, в котором имеются все необходимые программные ресурсы, требуемые для его запуска (Linux, Nginx, PHP, MySQL). Ресурсы на 100% конфиденциальны и не делятся ни с кем. Многие виртуальные хостинги WordPress не имеют данной возможности, поэтому любой соседний сайт с высоким трафиком будет вызывать ошибки 504 на вашем сайте.

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

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

  • Медленный сервер. Вполне возможно, что сервер, на котором расположен ваш WordPress сайт, слишком медленно отвечает на запросы, и поэтому он генерирует ошибки шлюза.
  • Недостаточно PHP воркеров. PHP-воркеры используются для выполнения кода на вашем WordPress-сайте. На требовательных в плане ресурсов сайтах вполне может быть так, что все PHP-воркеры заняты, и в этом случае они начинают формировать очередь. Если очередь и бэклог заполнены, старые запросы начинают игнорироваться. Вы можете попросить ваш хостинг увеличить количество PHP-воркеров. Дополнительные PHP-воркеры для сайта позволяют одновременно выполнять несколько запросов.
  • Проблемы с файрволом. Файрвол на вашем сервере может содержать ошибки в результате неверной конфигурации или правил, препятствующих установлению соединения.
  • Сетевое подключение. Если возникают проблемы с сетевым подключением между прокси-сервером и веб-сервером, то это может вести к задержкам с ответом для HTTP-запросов. Также могут возникать сетевые проблемы с балансировщиком нагрузки, если он используется.

Также важно отметить, что ошибки 504 могут обманчиво выглядеть как ошибки 503 (сервис недоступен) или даже ошибки 502 (bad gateway), но на практике они отличаются.

Если вы хотите предотвратить появление таких ошибок в будущем, вы можете воспользоваться инструментом, таким как updown.io, для отслеживания ситуации и немедленного уведомления о любых проблемах. Сервис периодически отправляет HTTP HEAD-запрос к указанному URL. Вы можете просто задать вашу главную страницу. Можно задавать частоту проверок:

  • 15 сек
  • 30 сек
  • 1 мин
  • 2 мин
  • 5 мин
  • 10 мин

Он пришлет вам электронное письмо, если ваш сайт перестал работать, с указанием времени, когда это случилось. Ниже приведен пример:

Ошибка 504

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

  1. Спам, боты и DDoS-атаки

Может быть так, что ваш сайт был заспамлен ботами или подвержен DDoS-атаке. Иногда это ведет к некэшируемым запросам и, как следствие, к перегрузке сервера, что и выливается в ошибку 504 gateway timeout. Вы можете изучить аналитику сервера, чтобы увидеть, есть ли в ней какие-либо паттерны. В Kinsta имеется, к примеру, инструмент MyKinsta для аналитики. Вы можете попросить эти данные у вашего хостинга.

Первый отчет, который мы советуем изучить – это IP-адреса топовых клиентов. Обычно это очень полезно, особенно если ваш сайт внезапно стал генерировать большой трафик или попал под атаку ботов.

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

Третий отчет, который мы рекомендуем посмотреть – это анализ кэша. Здесь вы можете видеть, какие запросы отсутствуют в кэше, а также каковы топовые локации вашего сайта. По причинам производительности и стабильности вы должны стараться закэшировать как можно больше запросов. Это не всегда возможно, поскольку некоторые сайты генерируют большое количество некэшируемых запросов (как в случае с WooCommerce), и они нужны для того, чтобы функционал (к примеру, корзина товаров или процесс покупки) работал правильно и синхронизировался.

Если вы обнаружите и идентифицируете трафик/IP-адреса, которые должны быть заблокированы на вашем сайте, вы можете затем воспользоваться плагином безопасности WordPress. Однако не все хостинги позволяют устанавливать плагины безопасности. Kinsta, к примеру, запрещает, что сделано по нескольким причинам. Во-первых, такие плагины отражаются на производительности, особенно возможности сканирования. Во-вторых, функции блокировки IP в них не работают, поскольку хостинг использует балансировщики нагрузки с Google Cloud Platform.

Естественно, IP-адреса могут быть всегда заблокированы службой поддержки хостинга, однако, в зависимости от длительности и масштабов атаки, это может превратиться в бесконечный процесс. Многие атаки или спам при блокировке в одной области переключаются на другие зоны, меняют IP-адреса или прокси. Поэтому в данном случае мы рекомендуем установить решение безопасности, такое как Cloudflare или Sucuri.

  1. Проверьте ваши плагины и темы.

Многие считают, что сторонние плагины или темы не приводят к ошибкам 504 gateway timeout. И в большинстве случаев это верно. Но, по нашему опыту, медленный некэшируемый запрос от плагина может привести к задержкам, поскольку он задействует больше ваших PHP-воркеров. Как только вы достигнете предела PHP-воркеров, очередь будет убирать ваши прошлые запросы, что может вести к ошибкам 504. Их не следует путать с ошибками 502, когда ошибка появляется в результате достижения таймаута в 60 секунд в очереди.

Есть несколько способов устранения этой проблемы. Один из них — деактивация всех ваших плагинов. Помните, что вы не потеряете никаких своих данных, если отключите плагин. Если у вас есть доступ к панели администратора, просто перейдите к разделу с плагинами и выберите «Деактивировать» из меню с массовыми действиями. Это приведет к отключению всех ваших плагинов.

Если это устранило проблему, вам нужно найти ее виновника. Начинайте активировать плагин один за другим, перезагружая сайт после каждой активации. Как только вы увидите ошибку 504, вы сможете идентифицировать проблемный плагин. Затем вы можете обратиться к разработчику плагина за помощью или опубликовать тикет в репозитории WordPress.

Если у вас нет доступа к панели администратора, вы можете использовать FTP-клиент для подключения к своему серверу и переименования папки с плагинами в нечто вроде plugins_old. Затем проверьте свой сайт еще раз. Если это сработает, вам нужно будет протестировать каждый плагин по отдельности, чтобы найти виновника. Переименуйте папку с плагинами обратно в plugins и затем начинайте переименовывать папки отдельных плагинов внутри нее, пока не обнаружите проблемный плагин. То же самое можно сделать и на тестовом сайте.

Обязательно убедитесь в том, что все ваши плагины, темы и ядро WordPress обновлены до последней версии. И убедитесь, что вы используете поддерживаемую версию PHP.

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

 

  1. Проверьте логи.

Вы также можете использовать ваши журналы (логи) ошибок. В Kinsta ошибки можно просмотреть в специальном разделе консоли MyKinsta. Вы сможете быстро установить проблему, особенно если ее источником является плагин на сайте. Если ваш хостинг не предлагает инструментов для ведения логов, вы можете добавить следующий код в файл wp-config.php, чтобы включить логгинг:

define( 'WP_DEBUG', true );  define( 'WP_DEBUG_LOG', true );  define( 'WP_DEBUG_DISPLAY', false );

Логи обычно расположены в каталоге /wp-content. Иногда они могут находиться в отдельных папках.

Вы можете также проверить логи в Apache и Nginx, которые чаще всего находятся по адресу:

Apache: /var/log/apache2/error.log

Nginx: /var/log/nginx/error.log

  1. Параметры Nginx

Если вы обслуживаете свой собственный сервер и WordPress сайты на Nginx + FastCGI (php-fpm) или Nginx как прокси для Apache, то в таком случае есть дополнительные настройки, которые вы можете изменить, чтобы предотвратить появление ошибок 504 gateway timeout.

Если вы используете Nginx с FastCGI (php-fpm), то в таком случае вам нужно сначала внести изменения в файл PHP-FPM. Перейдите в /etc/php5/fpm/pool.d/www.conf (может варьироваться в зависимости от версии PHP). Установите следующую директиву:

request_terminate_timeout = 300

Затем вы должны изменить файл php.ini, который обычно расположен по адресу /etc/php.ini. Найдите директиву max_execution_time. Увеличьте ее значение до 300 или создайте директиву, если ее нет:

max_execution_time = 300

Наконец, вам нужно будет изменить файл nginx.conf. Добавьте в конфигурацию вашего виртуального хоста Nginx следующее:

 

location ~ .php$ {  ...  fastcgi_read_timeout 300;  }

Затем просто перезапустите Nginx и PHP-FPM.

 

service nginx reload  service php5-fpm reload

 

Если вы используете Nginx в качестве прокси для Apache, то в таком случае добавьте следующее в ваш файл nginx.conf:

 

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

Далее просто перезапустите Nginx.

 

service nginx reload

Заключение

Как вы можете видеть, есть много разных способов и методов устранения ошибок 504 gateway timeout на WordPress сайте. Как правило, это проблемы с сервером, и в данном случае вам нужно связаться с вашим хостингом, чтобы решить их. Но важно помнить о том, что они могут также вызываться и сторонними плагинами или переполнением очереди/бэклога ваших PHP-воркеров.

Источник: kinsta.com

oddstyle.ru

Что такое ошибка 504 Gateway Timeout?

Коды состояния HTTP, начинающиеся с цифры 5, являются ошибками на стороне сервера. Они появляются, когда невозможно выполнить запрос из-за нарушения связи между несколькими серверами.

Ошибка 504 gateway timeout – это код состояния HTTP, который появляется, когда один сервер не получает своевременный ответ от другого сервера, который действует как шлюз или прокси. Проще говоря, это означает, что сервер не смог выполнить ваш запрос в течение заданного периода времени.

Ошибка 504 - страница в браузере

Ошибка 504 gateway timeout также может иметь и другие формулировки, например:

504 Gateway Timeout nginx
Gateway Timeout Error
HTTP Error 504
504 Gateway Time-out – The server didn’t respond in time
HTTP Error 504 – Gateway Timeout

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

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

1. Обновите страницу

Первый шаг в решении ошибки 504 gateway timeout самый простой. Подождите несколько минут и обновите страницу. Может быть, что сервер в какой-то момент получил больше запросов, чем обычно и не смог обработать их.

Пока вы ожидаете, вы можете использовать онлайн инструмент check if the website is down (проверить работает ли сайт). Это хороший способ определить, относится ли проблема к локальной сети.

Проверка работы сайта онлайн инструментом

2. Попробуйте другой браузер

В случае, если сайт онлайн, однако вы всё равно видите ошибку 504 gateway timeout, попробуйте сменить свой браузер на другой. Очистите кэш браузера или воспользуйтесь режимом incognito, это тоже может помочь определить, связана ли причина проблемы с браузером.

3. Очистите кэш DNS

Ошибка 504 gateway timeout иногда может быть результатом некорректного устаревшего кэша DNS, но его не сложно очистить. Способ очистки зависит от вашей операционной системы. Вот руководство как очистить кэш DNS в ОС Windows, Linux и Mac OS.

Временно переключите DNS сервера на Google Public DNS, это поможет определить возник ли код состояния HTTP по причине DNS проблемы. Однако мы рекомендуем этот вариант для более опытных пользователей.

4. Проверьте на разных устройствах

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

5. Посмотрите журнал ошибок

Ошибка 504 gateway timeout может также быть вызвана недавними изменениями или обновлениями на сайте. Самый быстрый путь обнаружения – проверка журнала ошибок (англ.) для поиска подсказок. Пользователи WordPress могут включить журналирование ошибок добавлением таких строк в файл wp-config.php:

define( 'WP_DEBUG', true );  define( 'WP_DEBUG_LOG', true );  define( 'WP_DEBUG_DISPLAY', false );

Теперь все возникающие варианты ошибок будут появляться в файле wp-contents/debug.log.

Журнальный файл для ошибок WordPress

6. Проверьте плагины

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

Для отключения всех плагинов WordPress перейдите в каталог wp-content, дайте каталогу plugins другое имя.

Отключение всех плагинов в WordPress

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

Отключение плагина WordPress по FTP

7. Проверьте CDN

Если вы используете CDN для более быстрого получения контента, то обязательно проверьте всё ли в порядке с этой стороны. Самый распространённый случай – это CloudFlare, который работает как CDN и как сервис предотвращения негативных последствий от DDoS. При его использовании вы можете столкнуться в двумя видами ошибок 504 gateway timeout.

Ошибка 504 gateway timeout cloudflare - 1

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

Ошибка 504 gateway timeout cloudflare - 2

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

8. Измените настройки сервера

Если вы используете VPS хостинг, то есть ещё несколько дополнительных моментов, которые вы можете попробовать для исправления ошибки 504 gateway timeout. Они будут заключаться в изменении настроек сервера и увеличении лимитов некоторых ресурсов.

Apache

Пользователи Apache могут увеличить значение timeout по умолчанию в файле httpd.conf. Например:

# Timeout: The number of seconds before receives and sends time out. Timeout 600

Также увеличение лимита max_execution_time в php.ini может позитивно сказаться:

max_execution_time 300

Сохраните изменения и перезапустите apache, после чего проверьте. Ошибка 504 gateway timeout должна уйти, если её причиной были недостаточное значение таймаута запроса.

Nginx

Если ваш VPS использует Nginx, попробуйте увеличить такие параметры в файле /etc/nginx/conf.d/timeout.conf:

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

Также рекомендуется увеличить max_execution_time в php.ini:

max_execution_time 300

После сохранения изменений перезапустить Nginx и попробуйте ещё раз открыть свой сайт.

9. Свяжитесь со службой поддержки

В случае настойчивой ошибки 504 gateway timeout после прохождения всех шагов выше, рекомендуется обратиться в службу поддержки вашего хостинга. Постарайтесь описать, какие шаги вы проделали для выявления причины ошибки и её устранения и предоставьте как можно больше информации, это значительно ускорит процесс.

Выводы

В этом руководстве мы рассмотрели общие шаги для решения проблемы, связанной с ошибкой 504 gateway timeout. Если у вас есть свои хитрости, подсказки или дополнительные решения для устранения этого кода состояния HTTP, дайте нам знать в комментариях!

www.hostinger.ru

Код ошибки 501, 504, 505, 506 Google Play Market: что означают, причины

Все эти ошибки возникают при скачивании, обновлении или установке приложений. То есть, Play Market не может начать или корректно завершить один из этих процессов и выдает соответствующий код ошибки.

  • Ошибка 501 — возникает из-за проблем во время установки приложения;
  • Ошибка 504 — возникает из-за проблем во время обновления приложения;
  • Ошибка 505 — проблемы при скачивании приложения;
  • Ошибка 506 — проблемы с памятью на устройстве.

Из-за чего могла произойти ошибка

Причиной для возникновения данных ошибок может стать очень многое. Например, во время загрузки приложения или новой версии к нему, у вас просело или разорвалось интернет-соединение. Возможно, проблемы в самом устройстве: не хватает памяти, наличие ошибок в коде операционной системы или устаревшая версия прошивки. Также проблема может скрываться в Play Market: ошибка в новой версии магазина или переполненный объем кэша и данных приложения. Для каждой из вышеперечисленных причин существует свое решение проблемы, подробно описанное в следующих инструкциях.

Устранение

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

Перезагрузка устройства

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

Очищение памяти

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

  1. Открываем приложение «Настройки».
  2. Переходим в раздел «Память».
  3. Нажмите кнопку «Кэш».
  4. Подтвердите действие.
  5. Теперь скачайте из Play Market или с любого другого проверенного и безопасного сайта приложение CCleaner.
  6. Запустите приложение и нажмите кнопку «Анализ», чтобы просканировать устройство на наличие бесполезных файлов.
  7. После окончания процесса нажмите кнопку «Очистить».
  8. Если вы обладаете SD-картой с большим запасом свободного места, можете переместить основную память телефона на нее. Через настройки телефона зайдите в раздел «Память» и в подразделе «Основная память» выберите MicroSD.

Настройка Play Market

Если предыдущие способы не помог, то выполните следующие действия:

  1. Откройте настройки устрйоства.
  2. Откройте пункт «Приложения».
  3. Откройте подраздел «Все».
  4. Отыщите программу Play Market и откройте информацию о его данных.
  5. Последовательно нажмите «Остановить», «Стереть данные» и «Очистить кэш».
  6. Возвратитесь к общему списку программ и выберите в нем Google Service Framework.
  7. Последовательно нажмите те же кнопки «Остановить», «Стереть данные» и «Очистить кэш».
  8. Перезагружаем телефон.

Откат Play Market до более старой версии

Если проблема возникла после очередного обновления Play Market, выполните следующие действия:

  1. Откройте приложение «Настройки».
  2. Откройте пункт «Приложения».
  3. Откройте подраздел «Все».
  4. Перейдите к приложению Play Market.
  5. Нажмите кнопку «Удалить обновления». После следующего запуска магазина, он автоматически обновится до последней версии, но ошибка должна пропасть.

Устранение ошибки синхронизации с аккаунтом Google

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

  1. Откройте приложение «Настройки».
  2. Перейдите в раздел «Аккаунты».
  3. Нажмите на иконку Google.
  4. Нажмите на свою почту или логин.
  5. Снимите все галочки.
  6. Перезагрузите устройство.
  7. Перейдите к тому же разделу и откройте меню.
  8. Нажмите кнопку «Синхронизировать сейчас».

Видеоурок: как устранить проблемы в Play Market

Обращение в службу поддержки

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

  1. Откройте приложение и разверните меню.
  2. Перейдите в раздел «Справка/отзыв».
  3. Если в разделе «Популярные» вы не найдете ответ на свой вопрос, нажмите кнопку «Отправить отзыв».
  4. Заполните необходимые поля, подробно описав суть проблемы и способы, которые не помогли ее решить, и отправьте запрос.

Особенности для разных версий Android

Ошибка в Play Market может возникнуть из-за того, что ваш телефон или планшет имеет слишком старую версию прошивки. Чтобы проверить наличие доступных обновлений и установить их, сделайте следующие действия:

  1. Откройте приложение «Настройки».
  2. Перейдите в раздел «О телефоне».
  3. Нажмите кнопку «Обновление системы».
  4. Дождитесь, пока закончиться поиск обновлений.
  5. Нажмите кнопку «Загрузить» и дождитесь окончания процесса. Убедитесь, что на устройстве есть достаточное количество зарядки, чтобы он не отключился в процессе обновления.

Если при установке, обновлении и загрузке приложений через Play Market у вас высветилось уведомление об ошибке с кодом 501, 504, 505 или 506, нужно перезагрузить устройство. Если это не помогло, и вы уверены, что на вашем устройстве достаточно памяти, следует очистить данные и кэш Play Market и сервисов, которые к нему относятся. Следующим шагом будет откат версии магазина до более ранней и настройка синхронизации аккаунта Google. В том случае, если ничего из вышеперечисленного не помогло, проверьте наличие более новой версии прошивки для вашего устройства и обратитесь в службу поддержки, отвечающей за Play Market.

fans-android.com

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

Ошибка 504

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

  • Скрипт PHP или на другом языке полностью завис и уже не вернет никакого ответа;
  • Скрипт работает очень долго, но в Nginx настроен интервал на сброс соединения если целевой сервер не ответил на запрос за отведенный строк;
  • Сервер перегружен и не успевает обслужить всех клиентов, вернуть ответы на все запросы Nginx;

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

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

Самый первый вариант — это если вашему серверу, php-fpm или apache не хватает ресурсов системы, например, памяти или процессора. Вы можете посмотреть свободную память с помощью команды free:

free -h

Ошибка 504

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

htop

Ошибка 504

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

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

fastcgi_send_timeout 300;
fastcgi_read_timeout 300;

Ошибка 504

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

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

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

sudo systemctl restart nginx

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

fgrep -i " 504 " /var/log/nginx/access.log

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

fgrep -i " 504 " /var/log/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

Ошибка 504

 

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

Ошибка 504

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

Выводы

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

losst.ru


You May Also Like

About the Author: admind

Добавить комментарий

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

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.