500 Internal Server Error

Август, 2022

Что делать, Как исправить?

Начнём с того, что 500 - это код ответа сервера , который является обобщённым и говорит только о том, что произошла ошибка, но не говорит о самой ошибке.

Поэтому, первое что необходимо сделать - найти ошибку в логах, смотри «Где найти логи?»

Обрати внимание что возвращает 500 ошибку, Laravel или web-сервер (nginx, apache):

  • если фреймворк, тогда смотри логи лары или включи debug mode
  • если web-сервер, тогда смотри логи web-сервера, скорей всего проблема с конфигураций, а в случае с apache проблема чаще всего в .htaccess

Фреймворк возвращает 500 ошибку при любом исключении, кроме 404 (не найдено), 419 (неверный CSRF-токен), 422 (ошибка валидации), 401 (авторизация) и 403 (отказано в доступе).
Также вызов dd() вернёт 500 код.

Если ошибка произошла с AJAX-запросом, то в DevTools , на вкладке network, при условии что включён debug mode, также можно найти полное описание ошибки и стектрейс.

Рекомендую воспользоваться инструментом Telescope , для более удобного мониторинга запросов в процессе разработки. А для мониторинга ошибок в production - Sentry