Задать вопрос
ajhdfhl
@ajhdfhl
Айтишник, постоянно учусь и развиваюсь.

Как сделать редирект URL страницы с Get параметрами на без GET параметров через htaccess?

Здравствуйте! Помогите, пожалуйста, настроить редирект через .htaccess вот таких URL'ов:

Исходный: /vybiraem-videokartu-pod-materinskuyu-platu-i-protsessor/comment-page-27/?unapproved=4135&moderation-hash=da912872c1d73732f097d0a3349b2920
Конечный: /vybiraem-videokartu-pod-materinskuyu-platu-i-protsessor/


Нужно универсальное правило которое будет работать для всех страниц и будет обрезать все начиная с "comment-page" в URL через 301 редирект на без "comment-page" и всего остального.

Сделал так:
RewriteCond %{QUERY_STRING} ^(.*)comment-page^(.*) [NC]
RewriteRule ^(.*)$ /$1?%1%2 [R=301,L]

Но не работает как надо, остается адрес вида: ?unapproved=4135&moderation-hash=da912872c1d73732f097d0a3349b2920
  • Вопрос задан
  • 482 просмотра
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 1
Zettabyte
@Zettabyte
Проф. восстановление данных ▪ Вопрос? См. профиль
Нужно универсальное правило которое будет работать для всех страниц ... Но не работает как надо, остается

Добавьте ? (знак вопроса) в конце вашего RewriteRule - это уберёт вообще все параметры.

Также, если у вас Apache 2.4.0 и новее, вы можете использовать флаг QSD, т.е. ваша вторая строка станет выглядеть так: RewriteRule ^(.*)$ /$1?%1%2 [R=301,L,QSD]

P.S.
И, кстати, может я что-то не понял, но comment-page у вас не в %{QUERY_STRING}, а в %{REQUEST_URI}.
Ответ написан
Ваш ответ на вопрос

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

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