Ошибка 504 в WordPress: как исправить

Опубликовано: 2023-10-26

Вы когда-нибудь сталкивались с ошибкой 504 на своем сайте? Страшная вещь, не так ли?

Когда вы ведете бизнес, никогда не бывает недостатка в вещах, которые могут пойти не так. Этому способствует множество факторов: человеческий фактор, технологические факторы и даже факторы окружающей среды.

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

Однако, допустим, вы все сделали идеально. У вас есть безопасный сайт, который быстро загружается.

Поисковые системы ранжируют его на первой странице результатов. И тогда вы получаете «Произошла ошибка (статус: 504)». Что теперь? Вы начинаете задавать вопросы в Google: «Что такое ошибка 504?», «Что такое тайм-аут шлюза 504?», «Что означает тайм-аут шлюза?» и «Что означает тайм-аут шлюза 504?».

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

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

Затем этот сервер обрабатывает запрос и отправляет обратно то, что вы запросили, вместе с заголовком HTTP. Этот заголовок содержит один из многих кодов состояния, который сообщает, все ли в порядке или возникла какая-то проблема. Не каждый код плох: код состояния 200 означает, что проблем нет.

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

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

Как может выглядеть код статуса 504

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

  • Ошибка 504 Время ответа сервера истекло
  • 504 ОШИБКА
  • Тайм-аут шлюза (504)
  • HTTP 504

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

Подробности об ошибке 504

Как уже упоминалось, существуют разные коды состояния HTTP, которые могут появиться на вашем веб-сайте в любой момент времени. Например, 200 кодов статуса означают, что все в порядке. Коды состояния 300 означают, что происходит перенаправление URL-адресов.

Код состояния 400 сообщит вам, что произошла ошибка конечного пользователя или «клиента». В этой ситуации виноваты настройки браузера, брандмауэра, подключения к Интернету или прокси-сервера. Коды состояния 500, такие как ошибка шлюза 504, означают, что на сервере веб-сайта возникла проблема.

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

Если вы хотите устранить ошибку 504 на своем веб-сайте, обратите внимание на словоблудие, если хотите сузить корень проблемы. Если у вас есть «NGINX» или имя какого-либо конкретного веб-хоста или провайдера CDN, проблема на стороне хоста, и вам следует связаться с ним, чтобы они могли это исправить.

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

Как исправить ошибку 504 Gateway Timeout на вашем сайте?

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

Это просто временно?

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

У вас есть нарушение безопасности?

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

Может ли быть причиной недавняя миграция?

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

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

Может быть это база данных?

Если вы считаете, что в чем-то виновата база данных MySQL, воспользуйтесь плагином для ее восстановления. WP-DBManager — хорошее предложение, которое доказало свою эффективность.

Вы изменили файлы своей базы данных?

Если у вас есть, это может быть проблемой. Это не проблема всей базы данных, но если что-то было неправильно изменено в одном из этих файлов, это может привести к сбою в работе. Конкретный файл, на который следует обратить внимание, — это файл .htaccess . Откатите его к предыдущей версии, той, которая была до вашего обновления, и посмотрите, устраните ли вы проблему.

Вы установили новую тему или плагин?

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

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

CDN может быть виноват

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

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

Часто задаваемые вопросы по ошибкам 504 в WordPress

Почему на моем сайте WordPress постоянно появляется ошибка 504 Gateway Timeout ?

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

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

В чем разница между ошибкой 504 и другими кодами состояния HTTP ?

Ах, хороший вопрос! Итак, 504 — это лишь один из многих кодов. Хотя он указывает на тайм-аут шлюза , другие значения, например 500, означают внутреннюю ошибку сервера , а 502 — плохой шлюз .

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

Может ли неисправный плагин WordPress вызвать эту ошибку?

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

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

Как конфликты тем способствуют появлению ошибки 504?

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

Почему мое подключение к базе данных имеет значение?

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

Как конфигурация веб-сервера может все испортить?

Серверы похожи на машинные отделения веб-сайтов. Если что-то не так в конфигурации, будь то Apache, Nginx или другое программное обеспечение, это может привести к ошибке 504. Это похоже на установку палатки; если вы не сделаете это правильно, он рухнет.

Что происходит с тайм-аутами PHP ?

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

Как во все это вписывается обратный прокси ?

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

Могут ли настройки брандмауэра быть скрытой причиной?

О, конечно! Брандмауэры подобны вышибалам в мире Интернета. Если они блокируют необходимые соединения, вы можете столкнуться с ошибкой 504. Всегда дважды проверяйте свои настройки, чтобы убедиться, что они не слишком строгие.

Как проблемы с DNS могут привести к ошибке 504?

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

Завершающие мысли об ошибке 504

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

Если вам понравилось читать эту статью о том, как исправить ошибку 504, вам следует прочитать эту статью о том, как исправить белый экран смерти WordPress.

Мы также писали о нескольких связанных темах, таких как исправление http-ошибки WordPress при загрузке изображения, как исправить слишком много перенаправлений, как исправить WordPress, не отправляющий электронную почту, как исправить err_ssl_version_or_cipher_mismatch и исправление ошибки 502 плохой шлюз.