@ShamblerR

Редирект // и более, на / внутри %{request_uri} почему не работает?

На вид простая задача. если урле есть // или [/]{2,} и тому подбное сокраить до /
Соответственно пишу

RewriteBase /
RewriteCond %{REQUEST_URI} ^(.*)[/]{2,}(.*)$
RewriteRule . %1/%2 [R=301,L]

делаем так
test.ru//path1/ - не сработало ?!!
test.ru//path1// - сработало
test.ru//path1//path2// - опять несработало !
логично было бы предположить что он просто не видит // в начале строки но таки нет, если редирект

test.ru//path1// он идет на /test.ru/path1/ как и положено
Редирект отказывается работать
может кто сталкивался ?
  • Вопрос задан
  • 240 просмотров
Решения вопроса 1
@ShamblerR Автор вопроса
странно, но проблема решилась достаточно легко, почему-то квадратные скобки отрабатывались не валидно, удалив их все заработало, так же убрал 301

RewriteCond %{REQUEST_URI} ^(.*)/{2,}(.*)$
# если повтоярется // более двух раз
RewriteRule . %1/%2 [R,L]
# исключить все слешы, поставить 1
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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