htaccess редирект с каталога

Всем привет! Подскажите как настроить редирект в .htaccess по следующему условию.

  1. https://site.ru/shop/accessories/101/ -> https://site.ru/shop/accessories/101/
  2. https://site.ru/shop/accessories/ -> https://site.ru/
  3. https://site.ru/shop/ -> https://site.ru/

То есть, нужно редиректить с каталога и подкаталога на главную, а если мы на детальной странице товара, то оставить без изменений. Подскажите как это сделать.


Ответы (1 шт):

Автор решения: void

Что касается пункта 1: я понимаю, что вы не хотите делать перенаправление, но хотите, чтобы такой URL пропускался бы без изменений. Так что к нему ничего не применяем - настройка внизу будет игнорировать. А вот к двум следующим правило будет применяться и выглядит оно так:

Redirect 301 /shop/ https://site.ru/
Redirect 301 /shop/accessories/ https://site.ru/

Учитывая комментарии автора

Попробуйте через rewrite

RewriteEngine on
RewriteCond %{QUERY_STRING} ^$
RewriteRule ^shop/accessories/$ https://site.ru/? [R=301,L]

RewriteCond %{QUERY_STRING} ^$
RewriteRule ^shop/$ https://site.ru/? [R=301,L]

Результаты:

Для /shop/

https://htaccess.madewithlove.com?share=52702422-00d5-43f8-a6c2-ada7fb65c137

Для /shop/accessories/

https://htaccess.madewithlove.com?share=8e2cf9f7-2ace-41a7-93a3-33a87cbaf5af

Для /shop/accessories/101/

https://htaccess.madewithlove.com?share=42454e8e-5cd6-4904-a877-e52d822485ea

→ Ссылка