2012-03-29 18 views
0

私のWebサイトへのModリライトを実行しようとしています。そして、私はこの書き直しをかなり前から行っていました。私は.htmlを
例の後にクエリ文字列で書き換えられたURLを作成するために、新しい要件を満たされるまで、もちろん私は、タスク件まで大変だ - http://kypseli/admin/catagory.html?parent_id=1
私はこの本の正規表現を使用しています。
RewriteRule ^([A-Za-z0-9-/_]+).([html])/?$ index.php?rt=$1&%{QUERY_STRING}
しかし、クエリ文字列の値(parent_id)は渡されません。
これは完璧のために.html部分を使用しています。
http://kypseli/admin/catagory/?parent_id=1
しかし、私は.htmlでそれをしたいと思っています。ここに一例があります
http://www.espncricinfo.com/ci/content/video_audio/559158.html?genre=46
.htmlの後のクエリ文字列を使用したModリライト

誰かが助けてくれる人ですか?

答えて

3

リライトされたクエリに最初のクエリのすべてのクエリ文字列要素を追加する場合は、[QSA]フラグをrewriteRuleに追加するか、長く記述的なタグを使用する場合は[qsappend]を追加する必要があります。

RewriteRule ^([A-Za-z0-9-/_]+)/?$ index.php?rt=$1 [qsappend] 

「.html」の意味を完全に理解できませんが、これで十分です。

EDIT

あなたの問題は多分ドットが、それはエスケープする必要がありますされ\.、それはそうoptionallであれば、それはoptionnal一部にする必要があります:あなたは一つだけにしたい場合は

RewriteRule ^([A-Za-z0-9-/_]+)/?$ index.php?rt=$1 [qsappend] 
RewriteRule ^([A-Za-z0-9-/_]+)\.html?$ index.php?rt=$1 [qsappend] 

かこれはうまくいくはずです。

RewriteRule ^([A-Za-z0-9-/_]+)([\.html|/])?$ index.php?rt=$1 [qsappend] 

実際にはが必要です210をrewriteRuleに追加する場合は、クエリ文字列がなくても適用することができます。

+0

ご返信ありがとうございます。はい、[qsappend]を追加することで、すべてのクエリ文字列を渡すことができます。しかしまだ私はクエリ文字列が始まる前に ".html"を使用すると動作しません。 ?? 例 - これ取り組んでいる 'のhttp:// kypseli /管理/ catagory/PARENT_ID = 1 ' しかし....... これに動作していない'のhttp://kypseli/admin/catagory.html PARENT_ID = 1' 今回はあなたがそれを持っていることを願っています。 – Ariks

+0

ありがとうございます@regilero。できます..!チアーズ...! – Ariks

+0

は?content.php $?のRewriteRule ^(mypage.m3u8) '働いていた、男ありがとうございID = $ 1 [qsappend]' – Florida