MVC php, вопрос по выводу ошибок

12 3
А
На сайте с 27.08.2013
Offline
98
647

Всем добрый день. Ребята решил один ресурс переделать по модели MVC и возник один вопрос.

Только начал разрабатывать и уже столкнулся с проблемой. Вот мой .htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]

Делаю простую страницу index.php и там размещаю картинку

<img src="/1.jpg">

На самом деле картинки нет, но почему в консоли браузера у меня не показывает ошибку? Я понимаю, что все запросы работают через index.php. Как сделать так, чтобы подобные вида ошибки показывались в консоли браузера? Я так понимаю нужно .htaccess доработать?

LEOnidUKG
На сайте с 25.11.2006
Offline
1550
#1

Ну наверное надо создать 404 страницу и обрабатывать в движке у себя это.

✅ Трастовых площадок под размещение статей и ссылок. Опыт 12 лет! ( https://searchengines.guru/ru/forum/675690 ) ⭐ Купить вечные трастовые ссылки для сайта ( https://getmanylinks.ru/?srh ) ⭐ Ускорение ваших сайтов (WP, Opencart и др.) + Настройка сервера ( https://searchengines.guru/ru/forum/997205 )
T7
На сайте с 19.09.2018
Offline
34
#2
Айратиус:
Я понимаю, что все запросы работают через index.php.

Посмотрите, чем отвечает 1.jpg. Если с кодом 200 выдает результат index.php, добавьте условие, чтобы статичные файлы не обрабатывались "движком".

S
На сайте с 30.09.2016
Offline
459
#3
Айратиус:
Ребята решил один ресурс переделать по модели MVC

Поздравляю.

Айратиус:
и возник один вопрос
Который не имеет отношения к модели MVC.
Айратиус:
Я так понимаю нужно .htaccess доработать?
Голый апач, без знджинкса? Большая редкость в наше время. Доработать нужно и .htaccess, и движок. В .htaccess прописать статику, а в движок – обработку несуществующих адресов.
Отпилю лишнее, прикручу нужное, выправлю кривое. Вытравлю вредителей.
M
На сайте с 04.12.2013
Offline
181
#4
Айратиус:
Делаю простую страницу index.php

В MVC нет никакой «простой страницы index.php». Там index.php – это единая точка входа (фронт-контроллер). Конечно, если вы сами не определите страницу с подобным слагом, например: http://g09.ru/index.html

Вот из недавнего про 404-ую для совсем новичков:

http://phpforum.su/index.php?showtopic=94970

---------- Добавлено 11.03.2020 в 15:30 ----------

P.S. В действительности у вас должен быть обработчик ошибки, не обязательно 404-ой, который по дефолту выводит соотв. страницу.

Хостинг FOZZY (http://fozzy.com.ru) / Выслушаю предложения на домены (http://u75.ru/domains-for-sale) / Домены и скрипт для коротких ссылок (http://u75.ru/domains-for-shortcuts)
Aisamiery
На сайте с 12.04.2015
Offline
206
#5

Айратиус, посмотрите для примера микро фреймворки, например slim и на примере разберётесь как оно работает

по сути вы должны в index.php прописать обработчик запросов и если запрос обработать не получается то выдавать 404 ошибку

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
S
На сайте с 30.09.2016
Offline
459
#6

Запрос /1.jpg вообще не должен попадать в движок. Если это не оговорено каким-то образом и не предназначено для обработки.

iworkshop
На сайте с 22.12.2008
Offline
176
#7

В .htaccess добавьте строчки(их добавьте до правил редиректа):

# не обрабатывать правилами редиректа реально существующие файлы и папки
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

index.php в вашем примере - это фронт контроллер, который по GET параметрам должен определять какой контроллер и метод вызвать. И вот в процессе этого выбора, если вызывается несуществующий класс или метод можно выбрасывать исключение с кодом и сообщением. Которое перехватывать в index.php и по нему вызывать страницу 404 и отдавать нужные коды.

S
На сайте с 30.09.2016
Offline
459
#8
iworkshop:
В .htaccess добавьте строчки(их добавьте до правил редиректа):
# не обрабатывать правилами редиректа реально существующие файлы и папки

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

Прочитай стартпост, нечитатель.

IL
На сайте с 20.04.2007
Offline
412
#9
Sitealert:
Запрос /1.jpg вообще не должен попадать в движок.

Ну.. должен - не должен.. это уж разработчику решать..

Не исключено ведь, что кастомная 404 страница в стиле общего оформления сайта имеет отношение к движку (как вариант - им и сгенерирована.. )

M
На сайте с 04.12.2013
Offline
181
#10

Во-во. Sitealert, ТС написал, что этого файла (изначально) нет. Может, он должен формироваться при первом обращении или вообще постоянно выдаваться динамически ;)

---------- Добавлено 11.03.2020 в 16:02 ----------

http://g09.ru/sexygirl.jpg :)

12 3

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий