
Неприятно однажды зайдя на сайт увидеть ошибку. Gateway Timeout Error (504) так же распространена, как и ошибки 500 и 502. Рано или поздно любой пользователь или владелец сайта сталкивается с ней, поэтому не волнуйтесь, вы не одиноки.
Что такое ошибка 504?
Коды состояния HTTP вида 5xx указывает на то, что с сервером что-то не так. При этом сервер осведомлен о неисправности и не может выполнить запрос клиента.
504 Gateway Timeout Error появляется в окне браузера, когда сервер не может своевременно получить ответ от другого сервера, который ответственен за отображение нужного сайта. Эта ошибка может также возникнуть, когда в обработке запроса участвуют два сервера. Если первый (основной) сервер задерживается, он ожидает ответ от второго сервера (сервера восходящего потока). Тогда время ответа истекает и пользователь видит ошибку 504.
Разные браузеры, операционные системы и виды серверов могут по-разному представлять ошибку 504 Gateway Timeout Error. Например, отображая только код (504) или только ее описание (Gateway Timeout).
Причины 504 Gateway Timeout Error
- Перегрузка сервера.
Это наиболее частая причина появления ошибки 504 - когда на сервер отправляется такое количество запросов, которое он не в состоянии вовремя обработать. Данная ситуация может возникнуть из-за большого трафика, неправильной конфигурации сервера или из-за DDoS атаки.
- Перегрузка сети.
Чрезмерное количество устройств, пытающихся подключиться к сети, перегруженные коммутаторы и плохо настроенные роутеры - все это может вызвать задержку ответа сервера.
- Проблемы с DNS.
Иногда неверно указанные DNS-записи не дают возможность перейти на сайт. Когда пользователь отправляет HTTP запрос, система доменных имен просто не находит нужный IP-адрес. Проблема также может быть не только в A записи, но и в CNAME.
- Неправильная настройка сервера.
В данном случае проблема может скрываться в коде или других настройках. Возможно, сервер необходимо перенастроить, чтобы он мог обрабатывать запросы, которые в данный момент возвращаются пользователям в виде ошибки 504.
- Неверный URL.
Действительно, маленькая ошибка в адресе запрашиваемой страницы и вы получите Gateway Timeout Error.
- Проблемы с браузером и кэшом.
Если кэш-файлы браузера повреждены или не обновлены, это может привести к ошибке.
- Некорректная работа плагинов и тем в CMS.
Например, в CMS WordPress несовместимость или неправильная работы некоторых плагинов и тем приводят ко всевозможным ошибкам. Поэтому владельцам сайтов следует всегда следить за настройками CMS.
- Проблема с Firewall.
Брандмауэр сервера, предназначенный для предотвращения вредоносного ПО и вторжений хакеров, из-за неправильной настройки может не пускать на сайт простых пользователей.
- Поврежденная база данных.
Проблемы с базой данных или даже с одной конкретной таблицей могут стать причиной ошибки 504. Подобные сообщения появляются при попытке входа в панель управления сайта.
Влияние 504 ошибки на SEO
Ошибки 504 Gateway Timeout оказывают негативное влияние на SEO продвижение сайта. Эти ошибки препятствуют загрузке веб-страницы, что негативно сказывается на удобстве пользователей. В большинстве случаев ошибки 504 возникают из-за проблем с самим сайтом или проблем на стороне сервера, однако результат один - клиент не может получит доступ к запрашиваемой странице.
Наиболее частое негативное влияние 504 ошибки выражается в снижении рейтинга, когда поисковые системы не могут проиндексировать страницы сайта. В дополнение к тому, что пользователи недовольны, частые ошибки 504 могут изменить эффективность поисковой оптимизации (SEO) сайта.
Как исправить ошибку 504?
Если определить точную причину возникновения 504 ошибки так и не удалось, следует перепроверить все, что могло ее вызвать. Последовательно следуйте этим рекомендациям и сможете избавится от сообщения Gateway Timeout Error на сайте:
- Перезагрузите страницу и перепроверьте URL.
Если проблема была в адресе страницы или проблема на сервере была временной, то после обновления страницы вы получите доступ к сайту.
Также желаемый URL можно проверить в сервисе downforeveryoneorjustme.com. Здесь вы узнаете, ограничен ли доступ к странице или сайту только у вас или у всех пользователей.
- Попробуйте использовать другой браузер.
Если проблема в кэше браузера или его настройках, то 504 ошибка должна исчезнут при использовании другого браузера.
- Проверьте доступность сайта на разных устройствах.
Иногда сайты бывают несовместимы с мобильными девайсами, поэтому удостоверьтесь, что сайт открывается на других устройствах. Если ошибка 504 исчезла, то вам, как владельцу сайта, стоит пересмотреть адаптацию своего онлайн-ресурса к разным девайсам.
- Отключите прокси-сервер.
Такое случается редко, однако стоит проверить работоспособность сайта с выключенным прокси-сервером. В Windows следует зайти в Настройки, затем в раздел Система. Там вы найдете раздел с настройкой прокси. В MacOS перейдите в Системные настройки в раздел Сеть. В дополнительных параметрах вы найдете настройки прокси.
- Проверьте записи DNS.
За соответствие доменного имени и IP-адреса отвечает А запись, поэтому убедитесь, что вы внесли ее в систему доменных имен правильно. Если вы работаете с каноническими именами, перепроверьте записи CNAME.
- Временно отключите CDN.
Иногда сторонние CDN вызывают ошибку Gateway Timeout. Попробуйте временно отключить CDN и проверить работу сайта.
- Очистите сайт от спама, ботов и защитите его от DDoS-атак.
Чрезмерное количество запросов, вызванное либо вами, либо злоумышленниками, нагружают сервер и тем самым не пускают клиентов на сайт. Примите меры и обезопасьте свой сайт от спамного трафика. Например, многие хостинг-провайдеры предлагают как дополнительную услугу усиление защиты от DDoS-атак.
- Проверьте ваши плагины и темы CMS.
Не все плагины и темы в WordPress работают вместе корректно. Перейдите к настройкам плагинов в панели управления и отключите их. Затем поочередно включайте плагины и таким образом вы найдете проблемный. Альтернативой является доступ к плагинам через FTP-клиент.
Также рекомендуем обновить версию PHP, если она устарела, и проверить обновления для самой CMS.
- Проверьте журналы логов.
Если найти причину ошибки так и не удалось, проверьте журнал логов. Последние записи помогут вам выяснить корень проблемы и быстрее ее решить.
Чтобы проверить журнал логов сервера, вам нужно зайти на сервер через любую утилиту (например, с использованием ssh) и перейти в папку, где хранятся логи. Обычно они расположены в папке /var/log или /var/log/httpd.
Для просмотра лог-файла, используйте команду cat (для показа всего содержимого) или tail (например, для показа только последних 10 строк).
cat /var/log/error.log или tail -n 10 /var/log/error.log
- Измените параметры Nginx.
Если вы используете Nginx+FastCGI (php-fpm) для сайта и сервера, он может выступать как прокси для Apache. С помощью дополнительных настроек можно избавится от ошибки 504.
В файле /etc/php5/fpm/pool.d/www.conf установите директиву:
request_terminate_timeout = 300
Создайте или измените директиву max_execution_time, которая находится в /etc/php.ini, до значения:
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
- Свяжитесь с вашим хостинг-провайдером.
Техническая поддержка хостинг провайдера подскажет, в чем может заключаться проблема и оперативно проконсультирует вас по поводу возникшей ситуации. Опишите специалисту, какие шаги вы уже предприняли - это ускорит процесс.
Другие ошибки 5хх
Во время работы в интернете также можно столкнуться с другими ошибками вида 5хх:
- 500 Internal Server Error - внутренняя ошибка сервера. Сервер не может обработать запрос из-за неполадок и точная причина неизвестна.
- 501 Not implemented - метод не поддерживается. Эта ошибка сообщает о недостаточных функциональных возможностях для обработки запроса.
- 502 Bad Gateway - плохой шлюз. Обычно это означает, что сервер, который выступает в роли шлюза или прокси-сервера, не может получить доступ к нужному ресурсу.
- 503 Service Unavailable - сервис недоступен. 503 чаще всего говорит о том, что сервер временно не может обрабатывать запросы из-за перегрузки или обслуживания.
- 505 HTTP version not supported - версия HTTP не поддерживается. Сделанный пользователем запрос содержит ту версию HTTP, которую сервер не поддерживает.
- 507 Insufficient storage - недостаточно места для хранения. Здесь все элементарно - сервер не обрабатывает запрос по причине отсутствия свободного места на диске.
- 510 Not extended - отсутствует расширение. В запросе клиента оказалось расширение, которое не поддерживается сервером. Как результат - невозможность обработать запрос.
24/7 Поддержка
Положитесь на нас. Техподдержка is*hosting доступна 24/7 и не игнорирует запросы клиентов.
Подробнее