.htaccess如何将url参数重定向到子目录

.htaccess如何将url参数重定向到子目录,.htaccess,url,parameters,query-string,.htaccess,Url,Parameters,Query String,如何重定向此URL字符串: 为此: 注意,param1没有设置值,查询字符串只有“param1”。为了捕获查询字符串,您需要使用%{query\u string}: RewriteCond %{QUERY_STRING} !^$ RewriteCond %{QUERY_STRING} ^(.*)$ RewriteRule ^sub$ /sub/%1/? [R=301,L] 但是如果没有http://mydomain.com/sub/param1/或任何规则来捕捉它仍然会失败的信息 仅当ht

如何重定向此URL字符串:

为此:


注意,param1没有设置值,查询字符串只有“param1”。

为了捕获查询字符串,您需要使用
%{query\u string}

RewriteCond %{QUERY_STRING} !^$
RewriteCond %{QUERY_STRING} ^(.*)$
RewriteRule ^sub$ /sub/%1/? [R=301,L]
但是如果没有
http://mydomain.com/sub/param1/
或任何规则来捕捉它仍然会失败的信息


仅当
http://mydomain.com/sub
包含一个附加的非空查询字符串。

这起到了作用,但现在如何防止查询字符串被附加回新URL?@PatrickWyzorski关于删除查询字符串,我已更新了答案,以便您可以使用新代码。请记住,在某些情况下,您可能会从301重定向中得到缓存,因此您可能不会立即看到查询字符串的删除。在这种情况下,请尝试使用其他浏览器来确认它是否工作。