Перенаправление URL путем удаления строки - PullRequest
0 голосов
/ 06 сентября 2018

Я должен перенаправить некоторые URL.

например, если URL-адрес

www.example.com/shop   valid

www.example.com/shop/red-product  need redirection to www.example.com/red-product

www.example.com/shop/green  need redirection to www.example.com/green

www.example.com/shop/any-string  need redirection to www.example.com/any-string

Как я могу это сделать. Пожалуйста, помогите.

Мой текущий файл htacess -

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

Redirect 301 /bio/ https://www.example.com/bio/

Options -Indexes

Ответы [ 2 ]

0 голосов
/ 06 сентября 2018

Вы можете заменить свой код следующим:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

RewriteRule ^shop/(.+)$ /$1 [L,NC,NE,R=301]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

</IfModule>
0 голосов
/ 06 сентября 2018

Ниже должно работать правило, мы сопоставляем группу только после магазина.

RewriteEngine On
RewriteCond %{REQUEST_URI} ^/shop/(.*)
RewriteRule ^ http://www.example.com/%1 [R]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...