Вместо 404 получаю 500 ошибку
Вместо 404 получаю 500 ошибку
При заходе на несуществующую страницу срабатывает http exception и выкидывает страницу 404, а в консоль и, что самое неприятное яндексу, передает ответ 500. Подскажите где искать причину, если нужно, увидеть код напишите, выложу.
Re: Вместо 404 получаю 500 ошибку
Скорее всего все ошибки ловятся и передаются в 1 error экшен, а там без разбора выводится 1 шаблон для всего подряд, поэтому кажется что страница 404.
Re: Вместо 404 получаю 500 ошибку
Как исправить? И второй вопрос почему прилетает 500 ошибка с несуществующей страницы?
Re: Вместо 404 получаю 500 ошибку
Совсем никто не может помочь?
Re: Вместо 404 получаю 500 ошибку
Понять бы хоть проблема такая сложная, что все светлые головы не знают как решить или спросил, что не так, что помогать никто не хочет...
Здесь: вроде похожий вопрос, но куда вставить, то что порекомендовал samdark не знаю. Т.е. где это устанавливается и главное как?
Здесь: вроде похожий вопрос, но куда вставить, то что порекомендовал samdark не знаю. Т.е. где это устанавливается и главное как?
Re: Вместо 404 получаю 500 ошибку
Точно ли выкидывается 404-ая? Этот Exception ловится самим yii2, и выставляется правильный статус. В логи ошибок лазили? Если 500-я, там должен быть какой-нибудь мат
Re: Вместо 404 получаю 500 ошибку
Информации пока мало, чтоб чем-то ещё помочь
Re: Вместо 404 получаю 500 ошибку
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}
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}
Re: Вместо 404 получаю 500 ошибку
А страница открывается yii'шная или вебсервера?
Re: Вместо 404 получаю 500 ошибку
Страница стандартная, шаблон с сообщением йишным. Ну т.е. отображается все как надо. В блоке контента, все на своих местах.
Последний раз редактировалось Igor346 2017.07.08, 10:45, всего редактировалось 1 раз.
Re: Вместо 404 получаю 500 ошибку
Полностью код отлаживать надо, пока всё равно не понятно, что у вас происходит. Попробовал у себя поделать такие штуки - нормальный 404-й статус отдаётся
Re: Вместо 404 получаю 500 ошибку
Смотри что за ошибка в логах. Лог апача, лог приложения, лог PHP.
Где увидишь код 500, там и будет твоя реальная причина.
Где увидишь код 500, там и будет твоя реальная причина.
Re: Вместо 404 получаю 500 ошибку
В логах апача (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"
Re: Вместо 404 получаю 500 ошибку
Логи приложения - "/frontend/runtime/logs" если шаблон "advanced", "runtime/logs" если шаблон "basic".
Re: Вместо 404 получаю 500 ошибку
В логах приложения, не нашел 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'
]
Re: Вместо 404 получаю 500 ошибку
Не бросайте пожалуйста на пол пути. Мне как и написал ранее информация из логов не сказала ни о чем.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: Вместо 404 получаю 500 ошибку
Если кидается точно 404, а выводится 500-ка, значит ошибка возникает уже в обработке 404-ой. То есть либо у вас errorHandler свой, либо какой-то из target-ов для логов косячит. Попробуйте убрать всё логирование и использовать стандартную обработку ошибок. Если будет 404 — проблема где-то в них. Начинайте возвращать по одному. Если будет 500 всё-равно, это уже интересно.
Нравится Yii? Давайте сделаем его лучше!.
Re: Вместо 404 получаю 500 ошибку
Если не сложно подскажите еще немного, логирование в yii убирается или речь о другом логировании(апач, php)? И как его убрать? errorHandler вроде не писал, просто подключил http exception. Проблема наблюдается как на виртуальном сервере, так и на хостинге.
-
- Сообщения: 239
- Зарегистрирован: 2017.03.28, 20:03
Re: Вместо 404 получаю 500 ошибку
Покажите как вы подключили http exception