@stainer

Как правильно реализовать редиректы?

Добрый день.
Помогите разобраться в проблеме.
Сделали на сайте чпу, поэтому все старые ссылки нужно 301 редиректить на новые с чпу.
В htaccess сделали некоторые записи в виде RewriteRule ^articles/$ articles.php [L,NC,QSA].
А остальные страницы категорий и товаров добавили в бд и в php делаем проверку $_SERVER['REQUEST_URI'] на наличие в бд. Если есть, то отдаем заголовки 301.

Но есть проблема.
В htaccess есть такая запись ErrorDocument 404 /404.php, и если что-то не описано в htaccess (нет RewriteRule для реквестурла), то он выдается 404. А должно сначала попадать в php, там уже проверяться на наличие в бд и далее отдавать 404.
  • Вопрос задан
  • 49 просмотров
Решения вопроса 1
@stainer Автор вопроса
Решил тем, что ErrorDocument 404 перенаправил на страницу, где идет проверка на урлы в бд.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Stalker_RED
@Stalker_RED
Ну так уберите это из htaccess
И выдавайте 404 только если в базе не найдено, уже средствами php.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы