Вместо 404 получаю 500 ошибку

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

При заходе на несуществующую страницу срабатывает http exception и выкидывает страницу 404, а в консоль и, что самое неприятное яндексу, передает ответ 500. Подскажите где искать причину, если нужно, увидеть код напишите, выложу.
chesar
Сообщения: 514
Зарегистрирован: 2013.04.10, 17:49

Re: Вместо 404 получаю 500 ошибку

Сообщение chesar »

Скорее всего все ошибки ловятся и передаются в 1 error экшен, а там без разбора выводится 1 шаблон для всего подряд, поэтому кажется что страница 404.
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Как исправить? И второй вопрос почему прилетает 500 ошибка с несуществующей страницы?
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Совсем никто не может помочь?
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Понять бы хоть проблема такая сложная, что все светлые головы не знают как решить или спросил, что не так, что помогать никто не хочет...
Здесь: вроде похожий вопрос, но куда вставить, то что порекомендовал samdark не знаю. Т.е. где это устанавливается и главное как?
mkramer
Сообщения: 531
Зарегистрирован: 2014.12.14, 13:02

Re: Вместо 404 получаю 500 ошибку

Сообщение mkramer »

Точно ли выкидывается 404-ая? Этот Exception ловится самим yii2, и выставляется правильный статус. В логи ошибок лазили? Если 500-я, там должен быть какой-нибудь мат
mkramer
Сообщения: 531
Зарегистрирован: 2014.12.14, 13:02

Re: Вместо 404 получаю 500 ошибку

Сообщение mkramer »

Информации пока мало, чтоб чем-то ещё помочь
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

05:48:46.347 error yii\web\HttpException:404

exception 'yii\base\InvalidRouteException' with message 'Unable to resolve the request "jmhmg".' in /home/u695879014/public_html/vendor/yiisoft/yii2/base/Module.php:532
Stack trace:
#0 /home/u695879014/public_html/vendor/yiisoft/yii2/web/Application.php(102): yii\base\Module->runAction('jmhmg', Array)
#1 /home/u695879014/public_html/vendor/yiisoft/yii2/base/Application.php(380): yii\web\Application->handleRequest(Object(yii\web\Request))
#2 /home/u695879014/public_html/web/index.php(13): yii\base\Application->run()
#3 {main}

Next exception 'yii\web\NotFoundHttpException' with message 'Страница не найдена.' in /home/u695879014/public_html/vendor/yiisoft/yii2/web/Application.php:114
Stack trace:
#0 /home/u695879014/public_html/vendor/yiisoft/yii2/base/Application.php(380): yii\web\Application->handleRequest(Object(yii\web\Request))
#1 /home/u695879014/public_html/web/index.php(13): yii\base\Application->run()
#2 {main}
chesar
Сообщения: 514
Зарегистрирован: 2013.04.10, 17:49

Re: Вместо 404 получаю 500 ошибку

Сообщение chesar »

А страница открывается yii'шная или вебсервера?
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Страница стандартная, шаблон с сообщением йишным. Ну т.е. отображается все как надо. В блоке контента, все на своих местах.
Последний раз редактировалось Igor346 2017.07.08, 10:45, всего редактировалось 1 раз.
mkramer
Сообщения: 531
Зарегистрирован: 2014.12.14, 13:02

Re: Вместо 404 получаю 500 ошибку

Сообщение mkramer »

Полностью код отлаживать надо, пока всё равно не понятно, что у вас происходит. Попробовал у себя поделать такие штуки - нормальный 404-й статус отдаётся
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

mkramer писал(а): 2017.07.08, 14:08 Полностью код отлаживать надо, пока всё равно не понятно, что у вас происходит. Попробовал у себя поделать такие штуки - нормальный 404-й статус отдаётся
Немного подробнее если не затруднит, опишите порядок действий по отладке кода полностью.
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Вместо 404 получаю 500 ошибку

Сообщение Nex-Otaku »

Смотри что за ошибка в логах. Лог апача, лог приложения, лог PHP.
Где увидишь код 500, там и будет твоя реальная причина.
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

В логах апача (Apache-2.2_queriesa.log) есть такая строка:

Код: Выделить всё

site.loc: 127.0.0.1 [09/Jul/2017:19:14:35 +0300] "GET /3543453 HTTP/1.1" 500 31283 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:54.0) Gecko/20100101 Firefox/54.0"
если я правильно понял о чем речь. Но мне она ни о чем к сожалению не говорит, если не сложно поясните. Вопрос: где логи приложения посмотреть?
Nex-Otaku
Сообщения: 831
Зарегистрирован: 2016.07.09, 21:07

Re: Вместо 404 получаю 500 ошибку

Сообщение Nex-Otaku »

Логи приложения - "/frontend/runtime/logs" если шаблон "advanced", "runtime/logs" если шаблон "basic".
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

В логах приложения, не нашел 500. По ошибке вот, что пишет:

Код: Выделить всё

2017-07-09 19:14:35 [127.0.0.1][-][-][error][yii\web\HttpException:404] exception 'yii\base\InvalidRouteException' with message 'Unable to resolve the request "3543453".' in D:\OpenServer\domains\site.loc\vendor\yiisoft\yii2\base\Module.php:532
Stack trace:
#0 D:\OpenServer\domains\site.loc\vendor\yiisoft\yii2\web\Application.php(102): yii\base\Module->runAction('3543453', Array)
#1 D:\OpenServer\domains\site.loc\vendor\yiisoft\yii2\base\Application.php(380): yii\web\Application->handleRequest(Object(yii\web\Request))
#2 D:\OpenServer\domains\site.loc\web\index.php(13): yii\base\Application->run()
#3 {main}

Next exception 'yii\web\NotFoundHttpException' with message 'Страница не найдена.' in D:\OpenServer\domains\site.loc\vendor\yiisoft\yii2\web\Application.php:114
Stack trace:
#0 D:\OpenServer\domains\site.loc\vendor\yiisoft\yii2\base\Application.php(380): yii\web\Application->handleRequest(Object(yii\web\Request))
#1 D:\OpenServer\domains\site.loc\web\index.php(13): yii\base\Application->run()
#2 {main}
2017-07-09 19:14:35 [127.0.0.1][-][-][info][application] $_COOKIE = [
    '__utma' => '69645714.1834571958.1489328102.1499548721.1499616868.101'
    '__utmz' => '69645714.1489328102.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)'
    '_ym_uid' => '1494624489937050753'
    '__utmc' => '69645714'
    '__utmb' => '69645714.1.10.1499616868'
    '__utmt' => '1'
]
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Не бросайте пожалуйста на пол пути. Мне как и написал ранее информация из логов не сказала ни о чем.
Аватара пользователя
samdark
Администратор
Сообщения: 9489
Зарегистрирован: 2009.04.02, 13:46
Откуда: Воронеж
Контактная информация:

Re: Вместо 404 получаю 500 ошибку

Сообщение samdark »

Если кидается точно 404, а выводится 500-ка, значит ошибка возникает уже в обработке 404-ой. То есть либо у вас errorHandler свой, либо какой-то из target-ов для логов косячит. Попробуйте убрать всё логирование и использовать стандартную обработку ошибок. Если будет 404 — проблема где-то в них. Начинайте возвращать по одному. Если будет 500 всё-равно, это уже интересно.
Igor346
Сообщения: 87
Зарегистрирован: 2016.09.13, 22:59

Re: Вместо 404 получаю 500 ошибку

Сообщение Igor346 »

Если не сложно подскажите еще немного, логирование в yii убирается или речь о другом логировании(апач, php)? И как его убрать? errorHandler вроде не писал, просто подключил http exception. Проблема наблюдается как на виртуальном сервере, так и на хостинге.
sosnovskiy
Сообщения: 239
Зарегистрирован: 2017.03.28, 20:03

Re: Вместо 404 получаю 500 ошибку

Сообщение sosnovskiy »

Покажите как вы подключили http exception
Ответить