Назад | Перейти на главную страницу

301 постоянное перенаправление с изменением структуры URL

Я изменил URL категорий на сайте. Старые такие:

www.example-name.com/category-name-точно-одинаковые-ключевые слова/

www.example-name.com/category-name-точно-одинаковые-ключевые слова/ имя-подкатегории-точно-одинаковые-ключевые слова/

Новые URL-адреса:

www.example-name.com/category-name/

www.example-name.com/category/subcategory-name/

Я удалил "-точно-одинаковые-ключевые слова"из URL категорий.

В моем .htaccess у меня есть это:

# Category 301 redirection

RewriteRule ^-some-category-suffix(.*)$ $1 [L,R=301]

Это нормально, если есть только один уровень категории, он перепишет это:

www.example-name.com/category-name-точно-одинаковые-ключевые слова/

кому:

www.example-name.com/category-name/

Но, если существует более одного уровня категории, он удаляет только последний

www.example-name.com/category-name-точно-одинаковые-ключевые слова/ имя-подкатегории-точно-одинаковые-ключевые слова/

кому:

www.example-name.com/category-точно-одинаковые-ключевые слова/ имя-подкатегории /

-------------------------------------------------- ----------------------------------------

Как переписать (удалить) все экземпляры "-точно-одинаковые-ключевые слова", если более одного в старых URL на новые без него?

Добавить N флаг в RewriteRule, чтобы он повторялся столько раз, сколько соответствует правилу. Я не уверен, как этот флаг взаимодействует с флагами L и R; Я бы начал с того, что убрал оба из них, заставил правило работать, а затем посмотрел, какие из них вы можете вернуть.