.htaccess 301重定向和特殊字符问题

时间:2015-04-14 19:42:02

标签: .htaccess

我有一个结束的网址

/presentation/Item?k=ZW52aXJvbm1lbnRhbC1oZWFsdGgtc2FmZXR5LXNlY3VyaXR5LWVuZ2xpc2g=&

我需要重定向到http://domain.co.uk/films/ehss/

但是当我使用以下内容时;它不起作用;我试过逃避像这样的特殊字符?在它之前添加\但仍然没有快乐。

如果有任何用途,这一切都被添加到wordpress网站上的htaccess文件的最开头。

这就是我一直在尝试的:

Redirect 301 /presentation/Item\?k=ZW52aXJvbm1lbnRhbC1oZWFsdGgtc2FmZXR5LXNlY3VyaXR5LWVuZ2xpc2g=& http://domain.co.uk/films/ehss/

我查看了是否有任何其他字符是特殊字符而它们不是。此外,我不认为我可以使用REGEX,因为我有大约50个网址,所有格式与上面相同,需要重定向到seo友好网址。

2 个答案:

答案 0 :(得分:2)

您可以使用QUERY_STRING

解析mod_rewrite
RewriteEngine On

RewriteCond %{QUERY_STRING} ^k=ZW52aXJvbm1lbnRhbC1oZWFsdGgtc2FmZXR5LXNlY3VyaXR5LWVuZ2xpc2g=&$ [NC]
RewriteRule ^presentation/Item$ http://domain.co.uk/films/ehss/? [R=301,L]

答案 1 :(得分:0)

您无法使用Redirect指令匹配查询字符串。您可以使用THE_REQUEST变量来匹配请求uri和查询字符串,如下所示:

RewriteEngine On

RewriteCond %{THE_REQUEST} /presentation/Item\?k=ZW52aXJvbm1lbnRhbC1oZWFsdGgtc2FmZXR5LXNlY3VyaXR5LWVuZ2xpc2g=& [NC]
RewriteRule ^ /films/ehss/? [R=301,L]