@neoneel

Как скрыть расширение файла и папку в урл?

как скрыть расширение и папку файла в адресной строке браузера
пример:
site.ru/directory/file.php привести к виду site.ru/file ?

сейчас файл htaccess выглядит так :
RewriteRule .* index.php [L]
RewriteCond %{REQUEST_URI} ^/directory/.*$
RewriteRule ^directory/(.+)$ site.ru/$1 [L,NC]

пробовал ниже прописывать :
RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /([^.]+)\.phpl\ HTTP
RewriteRule ^([^.]+)\.php$ site.ru/$1 [L]
RewriteCond %{REQUEST_URI} !(\.[^./]+)$
RewriteRule (.*) /$1.html [L]
в итоге будет работать только если условие
RewriteRule ^directory/(.+)$ site.ru/$1 [L,NC] - отсутсвует
т.е. у меня получилось скрыть либо папку либу расширение но все вместе преобразовать не получается...какие есть варианты?
  • Вопрос задан
  • 491 просмотр
Пригласить эксперта
Ответы на вопрос 1
shambler81
@shambler81 Куратор тега htaccess
немного не понятна задача, всмысле скрыть расширение и папку ?
папка в формате ? папка.php или где?

Для исключений можно использовать во
т такие замечатлеьные штуки
 RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-l
  RewriteCond %{REQUEST_FILENAME} !-d

Отрицания работают на любые условия.
Так же прошу предоставить 5-6 ссылок что во что должно превратиться. я напишу регулярку и объясную что и почему.
Пока у вас каша ;(
Ответ написан
Ваш ответ на вопрос

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

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