@Minningt

Как пофиксить url или создание 404 ошибки?

Привет. Есть следующая проблема:
Есть у меня в главной директории файл index.php, а также папка "app", в кот. находятся файлы по верстке. Так вот, я использовал htaccess для того, чтобы путь к этим файлам был аля localhost/about вместо localhost/app/about и без расширения .php
Вот собственно и сам файл htacess
RewriteRule ^about /_app/about.php [L,QSA]
Вроде в url все нормально работает. Но!! Когда я пишу после about любое число, слово (например, localhost/about88888), то все рано показывает страницу как-будто это просто about, хотя по идее должна быть ошибка ибо файла нет такого. Такое же самое получается, когда я просматриваю запись типа details?id=4 - все нормально, показывает информацию, а, если я допишу ?id=4gfdgf, то все равно я останусь на этой странице, но данные будут пустые ибо нет такой записи в бд.(будет отображена просто верстка).
Вопрос: как решить эту проблему? Спасибо
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ответы на вопрос 3
@murrometz
На мой взгляд
1) Вам нужно поменять регулярное выражение в htaccess, так как сейчас
about88888 соответствует вашему регулярному выражению.

2) наверно, нужно проверять, есть ли данный элемент в php.
Если нет - возвращать 404 код и выводить ошибку.
Ответ написан
aliencash
@aliencash
Партизан
замените ^about$
Ответ написан
shambler81
@shambler81 Куратор тега htaccess
^- начало строки
& -конец

RewriteRule ^about& /_app/about.php [L,QSA]
В вашем случае вы говорите что строка начинается с эбаут а дальше вам собственно вообще паралеьно.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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