我有很多旧的网址入站指向不正确的位置,试图转发到新的位置。这些都要到根目录,所以我不能只是转发一切。
将它们中的一大块放到新位置的一种方法是在查询字符串中找到具有会话ID的块,它总是有32个字符,前面有s =
https://www.example.com/some-url-name-1233/?s=ba4a8a734b666b8d43499e5d497599a6
需要将其移动到(并删除会话ID)
https://www.example.com/newfolder/some-url-name-1233/
我无法使.htaccess
重定向与该字符串匹配。
我试过很多方法,最近的是:
RewriteRule ^(.*)s=([^.]{32})$ https://www.example.com/newfolder/$1 [L,R=301]
有什么建议吗?
1条答案
按热度按时间jbose2ul1#
这是一个经常回答的、有充分记录的问题:你不能通过
RewriteRule
访问请求的查询字符串。你需要使用RewriteCond
:我还修正了一些其他细节。