在我的previous post, 我问过如何301重定向所有.com/language/X
URL到.com/members/?members_search=X
使用htaccess。
谢天谢地,我得到了帮助,解决办法是RewriteRule ^language/(.*) /members/?members_search=$1 [R=301,L]
我刚刚发现,我还需要将任何现有连字符转换为空格。我假设不会有超过2个连字符。
测试用例
http://example.com/language/american-english
301应该重定向到http://example.com/members/?members_search=american%20english
例如,如果添加了额外的重定向,就可以了,
http://example.com/language/american-english
301重定向到http://example.com/members/?members_search=american-english
哪个301重定向到http://example.com/members/?members_search=american%20english
正下方RewriteRule ^language/(.*) /members/?members_search=$1 [R=301,L]
, 我添加的代码不正确:
RewriteCond %{QUERY_STRING} members_search
RewriteRule ^(.*)-(.*)$ /$1\\s$2 [L,R=301]