URL-адрес перенаправления 301 на основе категории в URL-адресе

URL-адрес перенаправления 301 на основе категории в URL-адресе

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

Вот как эти:

https://example.com/product/baader/baader-600/baader-600-belts/belt-rubber/
https://example.com/product/baader/baader-600/baader-600-belts/belt-urethane/
https://example.com/product/baader/baader-600/baader-600-parts/cover/
https://example.com/product/baader/baader-600/baader-600-parts/washer/

Все перенаправят на эту целевую страницу:

https://example.com/replacement-parts/baader/baader-600/

Поэтому я полагаю, что вы бы выбрали все, что содержит «product/baader/baader-600/», а затем убрали бы последнюю часть URL (/baader-600-belts/belt-rubber/) и перенаправили бы его на «/replacement-parts/baader/baader-600/». Я понятия не имею, как сделать sus правилом RewriteRule.

решение1

Добро пожаловать в ServerFault.

Нам не нужны сложные переписывания, чтобы достичь этого. Следующее будет работать...

location /product/baader/baader-600/ { return 302 /replacement-parts/baader/baader-600/; }

Перепишите эквивалент...

rewrite ^/product/baader/baader-600/ http://example.com/replacement-parts/baader/baader-600/;

Если вам требуется 301-перенаправление, то вот эквиваленты...

location /product/baader/baader-600/ { return 301 /replacement-parts/baader/baader-600/; }
rewrite ^/product/baader/baader-600/ /replacement-parts/baader/baader-600/ permanent;

решение2

Если предположить, что производитель должен быть динамичным, то можно добавить такое правило.

location ~ /product/(.+) {
    rewrite ^.*(\/product\/)([\w|-]*)\/(.*)\/.*$ /replacement-parts/$2/$3 permanent;
}

Here $2 is a second match group for manufacturer, and $3 contains product part. 

 

Связанный контент