Как 301 mod_rewrite много похожих URL-адресов одновременно? - PullRequest
0 голосов
/ 16 февраля 2019

У меня есть много URL, таких как:

https://www.url.com/user/shop/location/scoobydoo

Все они начинаются одинаково, но имя пользователя в конце отличается.Я пытаюсь перенаправить 301 их всех на:

https://www.url.com/profile-scoobydoo

Это работает, если я использую:

RewriteCond %{HTTP_HOST} www\.url\.com$
RewriteCond %{REQUEST_URI} ^\/user\/shop\/location\/scoobydoo$
RewriteRule .* https://www.url.com/profile-scoobydoo [R=301,L]

Проблема в том, что у меня несколько тысяч пользователей ихотя генерация их всех будет работать, она полностью затопит файл .htaccess.Наверняка должен быть более простой способ сделать это по имени пользователя?

Но как?Любая помощь с благодарностью.

1 Ответ

0 голосов
/ 16 февраля 2019

Попробуйте:

RewriteEngine on

RewriteRule ^user/shop/location/(.+)$ https://example.com/profile-$1 [L,R=301]

Вы также можете использовать директиву RedirectMatch для перенаправления URL

RedirectMatch 301 ^/user/shop/location/(.+)$ https://example.com/profile-$1 
...