我有很多这样的网址:
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文件。当然,必须有一种更简单的方法来按用户名执行此操作?
但是如何?任何帮助将不胜感激。
答案 0 :(得分:1)
尝试:
RewriteEngine on
RewriteRule ^user/shop/location/(.+)$ https://example.com/profile-$1 [L,R=301]
您还可以使用RedirectMatch
指令
进行网址重定向
RedirectMatch 301 ^/user/shop/location/(.+)$ https://example.com/profile-$1