使用301重定向重写htaccess中的查询字符串URL

时间:2013-01-07 12:20:28

标签: .htaccess redirect url-rewriting query-string

我试图在Stackoverflow上的其他问题中找到我的问题的解决方案,但是虽然有很多这样的问题回答了完全相同的问题但却有所不同,因为我问的是我应该如何定义更多重写条件中的两个查询字符串,

我正在尝试对查询字符串网址执行301重定向:

  

http://abc.com/index.php?arg1=abc&arg2=abc

将其屏蔽为

  

http://abc.com/prettified_url

,并尝试在htaccess中使用以下代码:

RewriteRule ^http://abc.com/index.php?arg1=abc&arg2=abc$ /prettified_url  [R=301,L,NC]

也尝试过使用:

RewriteCond %{HTTP_HOST} !^.*abc\.com
    RewriteRule .? - [S=2]
    RewriteCond %{REQUEST_URI} ^index.php
    RewriteCond %{QUERY_STRING} ^arg1=abc [NC]
    RewriteCond %{QUERY_STRING} arg2=abc [NC]
    RewriteRule ^(.*)$ /prettified_url [R=301,L]

    RewriteRule .? - [S=1]
    RewriteRule - -

还尝试在查询字符串ReWrite Condition中使用以下代码:

RewriteCond %{QUERY_STRING} ^arg1=abc&arg2=abc [NC]

但是,我无法看到它被重定向到 / prettified_url

1 个答案:

答案 0 :(得分:0)

尝试下面的一个:

RewriteCond %{QUERY_STRING} ^arg1=abc&arg2=abc
RewriteRule (.*) http://abc.com/prettified_url? [L,R=301]