2011-03-17 17 views
0

私はこのような簡単な問題でいくつかの困難を抱えています。変数の値に応じてHtaccessリダイレクト

私たちのサイトでは、GET変数 "p"(p = 1 - 最初のページ、p = 2 - 秒など)で動作するページャーがあります。

私は、この変数(p = 1)の値1をスクリプトが考慮したくありません。だから私は次のようにクエリ文字列を持っている:

http://www.mysite.ru/mypage/some_page2?p=1 

し、ページにhtaccessのを介してユーザをリダイレクトします:

http://www.mysite.ru/mypage/some_page2 

htaccessのルールがない値のみを扱う場合には、いいだろう

http://www.mysite.ru/mypage/some_page2?p=$#^&*_not_right_value 
http://www.mysite.ru/mypage/some_page2?p= 

のような "1" が、また、 ""、 "BLA-BLA-BLAは、" ご清聴ありがとうございました。

UPD:

私の場合のための作業溶液:.htaccessファイルを経由して

RewriteCond %{QUERY_STRING} ^p=1$ 
RewriteRule ^(.*)$ /$1? [R,L] 

答えて

0

私の場合のための作業溶液:答えを

RewriteCond %{QUERY_STRING} ^p=1$ 
RewriteRule ^(.*)$ /$1? [R,L] 
1

クエリ文字列操作は、一般的にだけでmod_rewriteを介して行うことができます。私はそれをテストしていませんが、以下はあなたが必要とするものに近いはずです。

RewriteEngine on 
RewriteCond %{QUERY_STRING} p=1 [OR] 
RewriteCond %{QUERY_STRING} p=[^0-9] 
RewriteRule (.*) http://www.mysite.ru/$1 [R, L] 

第2の条件は、単にpは=番号が続いていることをテストします。一度テストすると、ルールはpの後に数字だけが存在することをテストするように拡張できます(つまり、今すぐp = 2garbageが機能します)が、基本的なものから始める方が良いでしょう。

+0

Than'x、Wige。あなたの決定は、今私の場合に働く異形に私をもたらしました。 –

関連する問題