2012-04-03 9 views
2

.htaccessリダイレクトで渡す必要がある動的クエリ文字列があります。たとえば:.HTACCESS経由でクエリ文字列を渡す

私はこのURLをリダイレクトする必要があります。これにhttp://mysite.com/page1?action=signup&var2=dynamicVar

http://mysite.com?action=signup&var2=dynamicVar

私はこれは非常に単純ですけど、私は本当にのために働くだろうルール/構文の種類がわからないんだけどこの。

ご協力いただきありがとうございます。

答えて

2

すでに.htaccessファイルを持っている場合は、単純に次の行を追加します。

RewriteRule ^page1/?$ page2 [L,R,QSA,NC] 

更新:あなたのコメントに基づいて:

RewriteCond %{QUERY_STRING} (^|&)action=signup(&|$) [NC] 
RewriteRule ^page1/?$/[L,R,QSA,NC] 
+0

これはまさに私がやろうとしているようです。しかし、私は私の質問で誤って話しました。私は本当にこれをリダイレクトする必要があります:http://mysite.com/page1?var=dynamicVar これに:http://mysite.com?var=dynamicVar。どのようにそれを行うことができますか? – Media804

+0

私の更新**を確認してください。 – anubhava

+0

お返事ありがとうございましたが、私は再び完全にはっきりしませんでした(申し訳ありません)。私は上記の元の投稿を改訂しました。大きなことは、クエリ文字列の最初の部分が 'action = signup'と一致する場合にのみリダイレクトする必要があることです。 – Media804

-1

使用%{REQUEST_URI} Fiの.:

RewriteCond %{HTTP_HOST} ^website\.(.+)$ [NC] 
RewriteRule^http://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301] 

(%の使用{REQUEST_URI}によって)クエリ文字列を含む "ウェブサイト" へ "www.website ..." で始まるものを書き換えます
0
RewriteRule ^page1(.*)$ /page2$1 [L,R=301] 
0

入力これは

http://mysite.com/?action=signup&var2=dynamicVar 

このWILにリダイレクト書き換えルール

RewriteRule ^page1?(.*)$ /?$1 [L,R=301] 

ある

http://mysite.com/page1?action=signup&var2=dynamicVar 

lすべてのリクエストをリダイレクトするpage1を取得パラメータでhttp://mysite.com

関連する問題