404 ошибка, для несуществующих поддоменов
Всем привет!
Возможно у кого-то уже возникала подобная проблема. Суть такова — на хостинге для поддоменов прописано следующее правило *.domen.ru, т.е. при наборе любого поддомена, типа hfhw.domen.ru, сайт будет работать.
Сделано это для того, чтобы работали все необходимые поддомены для городов, типа msk.domen.ru, spb.domen.ru и так далее.
Города, добавляются через админку, есть соответствие «Москва»-> msk.domen.ru, «Владивосток» -> vladivosotok.domen.ru и т.д.
Мне необходимо при вводе чего-то подобного «fhfhf.domen.ru» делать проверку на существование в базе города с URL «fhfhf.domen.ru» и если его нет, то выдавать 404 ошибку.
На ум пришло только одно решение, что нужно делать такую проверку в классе modRequest, метод handleRequest.
Вопрос: Как правильно переопределить класс «modRequest» (возможна есть какая-то системная переменная)? Или может Вы решали или решили бы эту задачу по-другому?
Спасибо :)
Возможно у кого-то уже возникала подобная проблема. Суть такова — на хостинге для поддоменов прописано следующее правило *.domen.ru, т.е. при наборе любого поддомена, типа hfhw.domen.ru, сайт будет работать.
Сделано это для того, чтобы работали все необходимые поддомены для городов, типа msk.domen.ru, spb.domen.ru и так далее.
Города, добавляются через админку, есть соответствие «Москва»-> msk.domen.ru, «Владивосток» -> vladivosotok.domen.ru и т.д.
Мне необходимо при вводе чего-то подобного «fhfhf.domen.ru» делать проверку на существование в базе города с URL «fhfhf.domen.ru» и если его нет, то выдавать 404 ошибку.
На ум пришло только одно решение, что нужно делать такую проверку в классе modRequest, метод handleRequest.
Вопрос: Как правильно переопределить класс «modRequest» (возможна есть какая-то системная переменная)? Или может Вы решали или решили бы эту задачу по-другому?
Спасибо :)
Комментарии: 3
Все хорошо, но 404 кода ответа все равно не получается. Я так понимаю, код ответа был выставлен раньше в методе handleRequest.
Здесь можно увидеть это — volgograd1.certa.ru, перекидывает на 404 страницу, но код ответа для страницы 302.
Перекидываю вот таким вот образом — $modx->sendRedirect('http://'.$_SERVER['HTTP_HOST'].'/404', array('responseCode' => 'HTTP/1.1 404 Not Found'));
хотя это не важно, каким образом переадресовывать, если сама страница volgograd1.certa.ru дала ответ 302, а нужно 404.
Здесь можно увидеть это — volgograd1.certa.ru, перекидывает на 404 страницу, но код ответа для страницы 302.
Перекидываю вот таким вот образом — $modx->sendRedirect('http://'.$_SERVER['HTTP_HOST'].'/404', array('responseCode' => 'HTTP/1.1 404 Not Found'));
хотя это не важно, каким образом переадресовывать, если сама страница volgograd1.certa.ru дала ответ 302, а нужно 404.
Кто знает, как правильно сделать свой кастомный класс «modRequest»? Хочу переопределить метод handleRequest, больше других вариантов не вижу…
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.