Akuma
@Akuma
Веб-программист

Как составить RewriteCond для .htaccess?

Добрый вечер пятницы всем.

Помогите составить реврайт для htaccess, чтобы добавлялся слеш на конце, если его нет, но в то же время для ссылок типа /url.json его добавлять уже не надо.

Например:

site.ru/any/url         >>    site.ru/any/url/
site.ru/any/url/        >>    site.ru/any/url/
site.ru/any/get.json    >>    site.ru/any/get.json


* Поясню, что файла site.ru/any/get.json может реально не существовать. Ссылка лишь означает, что ответ должен будет быть в JSON`е

** Мог бы с легкостью сделать на PHP… но хочется чтобы все решало свои задачи.
  • Вопрос задан
  • 9771 просмотр
Решения вопроса 1
emailAlexander
@emailAlexander
Добрый день, попробуйте сделать вот так
.htaccess:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_URI} !(/|.json)$ [NC]
RewriteRule ^(.*)$ http://site.ru/$1/ [R=301,L]

С праздниками!
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Hungry_Hunter
@Hungry_Hunter
А если как-то так попробовать? Указав в регулярке, что если на конце точка и за ней от 2 до 5 символов?

RewriteEngine On RewriteBase / RewriteCond %{REQUEST_URI} !(/|.[a-zа-я]{2,5})$ [NC] RewriteRule ^(.*)$ http://site.ru/$1/ [R=301,L]
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы