Устранение неполадок

HTTP коды ошибок на KapsuleHost

What 403, 404, 500, 502, 503 and 504 actually mean on this platform, and the specific thing to do about each one.

Что означают коды ошибок 403, 404, 500, 502, 503 и 504 на этой платформе, и что конкретно нужно делать в каждом случае.

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

Чтение фактического кода

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

В браузере откройте инструменты разработчика, перейдите на вкладку Network, перезагрузите страницу и нажмите на первый запрос. Статус находится в верхней части панели Headers.

Из терминала:

curl -sSI https://yourdomain.com/

Это выводит строку статуса и заголовки ответа без загрузки страницы. Заголовки важны: несколько случаев ниже определяются по заголовку, а не только по коду.

Краткая версия

КодЗначениеЧья проблема
401Требуется аутентификацияВключена защита паролем
403Отказано специальноПравило безопасности заблокировало запрос
404Не найденоВаш сайт, обычно маршрутизация
500Приложение вышло из строяВаш код или плагин
502Сервер за веб-сервером вышел из строяОбычно ваше приложение
503Намеренно не обслуживает прямо сейчасПриостановлено, на паузе или техническое обслуживание
504Слишком долго выполнялосьЧто-то в вашем коде работает медленно

401 Unauthorized

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

Отключите её или получите учетные данные в разделе Websites, на странице сайта, Advanced, затем Password protection. См. Защита паролем.

Обновление сертификата продолжит работать, пока включена защита паролем, поэтому это не нарушит ваш HTTPS.

403 Forbidden

403 означает, что что-то специально отказало в запросе. На этой платформе есть четыре отдельных источника.

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

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

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

Геоблокировка. Если вы ограничили свой сайт конкретными странами, все остальные получат ошибку 403. Проверьте Advanced, затем Security. См. Геоблокировка.

Блокировка IP. Либо та, которую вы сами добавили в разделе Security, либо блокировка на уровне платформы за нарушения.

Проблема с правами доступа к файлу или символической ссылкой. Менее распространено и обычно появляется после ручной операции с файлом через SSH.

404 Not Found

Сервер ответил, но по этому адресу ничего нет.

Одна страница 404. Файл или запись действительно не существует, или URL неправильный.

Все страницы, кроме главной, 404. Это проблема маршрутизации, и в WordPress это почти всегда permanlinks. Важно: веб-хостинг Kapsule использует nginx, а не Apache, поэтому правила переписи .htaccess здесь не работают. Если вы перенесли сайт с хостера, который их использовал, это ваша причина. См. Проблемы с Permalink и WordPress и .htaccess.

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

Работает на вашем компьютере и 404 в сети. Имена файлов Linux чувствительны к регистру. Logo.PNG и logo.png - это два разных файла.

500 Internal Server Error

Ваше приложение запустилось и вышло из строя. Веб-сервер в порядке, но код нет.

Это единственный случай, когда логи дают вам ответ почти сразу, потому что ошибка PHP fatal error записывает имя файла и номер строки, на которой произошел сбой, что обычно указывает точный плагин.

  1. Перейдите в Websites, на страницу сайта, Advanced, затем Logs.
  2. Посмотрите на самые свежие записи.
  3. Сопоставьте временную метку с моментом, когда вы увидели ошибку.

См. Логи ошибок. Для версии этого для WordPress, когда страница пуста вместо отображения ошибки, см. Белый экран WordPress.

Наиболее частые причины - это плагин или тема, несовместимые с вашей версией PHP, достигнут лимит памяти и сбой подключения к базе данных. См. Расширения и настройки PHP и Лимит памяти WordPress.

502 Bad Gateway

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

Частые причины:

  • Процесс PHP вышел из строя, часто из-за нехватки памяти на одном запросе.
  • Приложение Node.js не запущено или вышло из строя при запуске.
  • Всплеск трафика исчерпал доступные рабочие процессы.

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

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

503 Service Unavailable

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

Ваш сайт приостановлен. Вы увидите страницу с заголовком "This site is paused". Это состояние выставления счетов или учетной записи, а не техническая неисправность, и сайт сразу же вернется в сеть, когда состояние исчезнет. Проверьте Billing. См. Неудачный платеж и Аккаунт приостановлен.

Проект Orbit достиг лимита расходов. Ответ содержит заголовок X-Orbit-Paused: spending-cap, и на странице сказано, что сайт достиг своего месячного лимита расходов. Это сбивает людей с толку, потому что ничего не сломано и не требуется заявка в поддержку. Проект намеренно перестал обслуживать, чтобы вы не получили неожиданный счет.

Для возобновления: перейдите в Orbit, на страницу проекта, Settings, затем Spending cap, и увеличьте лимит. Обслуживание возобновляется после применения изменения, что может занять до часа. Оно также возобновляется автоматически в начале следующего периода выставления счетов. См. Лимиты расходов Orbit.

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

504 Gateway Timeout

Ваше приложение все еще работало, когда веб-сервер потерял терпение. Ничего не сломалось. Это просто было слишком медленно.

Типичные причины:

  • Долгоживущая операция импорта, экспорта, резервного копирования или массовой операции, выполняемая через браузер.
  • Плагин, вызывающий медленный внешний API на каждой загрузке страницы.
  • Дорогостоящий запрос к базе данных без индекса позади него.
  • Задача cron, запускаемая просмотром страницы, а не реальным cron.

Что делать:

  1. Определите, какой запрос работает медленно. На сайтах WordPress вкладка APM это показывает. См. Производительность сайта.
  2. Для долгих операций используйте командную строку вместо браузера. См. WP-CLI.
  3. Переместите запланированную работу на реальный cron. См. Задачи Cron.
  4. Увеличьте max_execution_time если работе действительно нужно больше времени, хотя это обходное решение, а не исправление. См. Расширения и настройки PHP.

Обратите внимание на разницу: если PHP сначала достигнет своего собственного лимита выполнения, вы получите 500, а не 504. Обе означают "слишком медленно", но на разных уровнях.

Вообще нет ответа

Иногда нет кода ошибки, потому что нет ответа. Соединение просто зависает и в конце концов истекает.

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

Пользовательские страницы ошибок

Вы можете заменить страницу ошибки по умолчанию для 400, 401, 403, 404, 500, 502, 503 и 504 на свой собственный HTML под Websites, на странице сайта, Advanced, затем Error pages. Kapsule предоставляет фирменные значения по умолчанию для 404, 500, 502, 503 и 504, если у вас их нет.

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

Связанные руководства

Вам всё ещё нужна помощь?

Напишите нам на support@kapsulehost.com или откройте чат в KPanel.

Открыть KPanel
HTTP коды ошибок на KapsuleHost