Htaccess 重定向子目录扩展和查询字符串
Htaccess redirect subdirectory extension and query string
我有url这样的http://www.example.com/subdir/Subcontent?QUERY=420501 i want to redirect it to http://www.example.com/subcontent.html?QUERY=420501 so if Subcontent is dynamic in url then it will change first letter of Subcontent to small and redirect to final url http://www.example.com/subcontent.html?QUERY=420501
我试过这个
RewriteCond %{QUERY_STRING} QUERY=([0-9]+) [NC]
RewriteCond %{REQUEST_URI} !\.html
RewriteRule ^subdir/(.*)$ / [L,R=301]
但这似乎行不通,我认为顺序不合适,条件无法对此一无所知。
在 Apache 或 vhost 服务器配置中添加 RewriteMap
:
RewriteMap lc int:tolower
还有一个额外的条件,使用此规则重定向和小写您的网址:
RewriteCond %{QUERY_STRING} (^|&)QUERY=([0-9]+) [NC]
RewriteRule ^subdir/([\w-]+)/?$ /${lc:}.html [L,NC,R=301]
我有url这样的http://www.example.com/subdir/Subcontent?QUERY=420501 i want to redirect it to http://www.example.com/subcontent.html?QUERY=420501 so if Subcontent is dynamic in url then it will change first letter of Subcontent to small and redirect to final url http://www.example.com/subcontent.html?QUERY=420501
我试过这个
RewriteCond %{QUERY_STRING} QUERY=([0-9]+) [NC]
RewriteCond %{REQUEST_URI} !\.html
RewriteRule ^subdir/(.*)$ / [L,R=301]
但这似乎行不通,我认为顺序不合适,条件无法对此一无所知。
在 Apache 或 vhost 服务器配置中添加 RewriteMap
:
RewriteMap lc int:tolower
还有一个额外的条件,使用此规则重定向和小写您的网址:
RewriteCond %{QUERY_STRING} (^|&)QUERY=([0-9]+) [NC]
RewriteRule ^subdir/([\w-]+)/?$ /${lc:}.html [L,NC,R=301]