2

リンクが次のように見える Web サイトがあります http://www.domain.com/index.php?lang=English&inc=canyoning 次のように rewriteRule を書くことができました:

RewriteRule (German|English)\/(.*) http://www.domain.com/index.php?lang=$1&inc=$2 [NC,R]

今、私のリンクは次のようになります: <a href="http://www.domain.com/English/canyoning">...

これは機能しますが、ブラウザーのアドレス バーにユーザー フレンドリではない URL が表示されます。/English/canyoningURL のようにリンクを使用するようブラウザに指示するにはどうすればよいindex.php?lang=English&inc=canyoningですか?

そして 2 番目: ページでフォームを使用したいと思います。フォーム メソッド =GET を使用しても POST を使用しても違いはありません。目的のサイトに変数が来ません。

私のrewriteRuleが間違っていると思います。これらの問題を修正するにはどうすればよいですか?

ご協力ありがとう御座います!

4

1 に答える 1

4

これは、書き換えではなくリダイレ​​クトを行っているためです.. (RフラグはRedirectを示します)

したがって、R フラグを削除すると問題が解決するはずです。

ハードコーディングされたドメインを削除する必要がある場合もあります。書き換えを行っているため、別のドメインに書き換えることはできません。

すなわち。変化する

RewriteRule (German|English)\/(.*) http://www.domain.com/index.php?lang=$1&inc=$2 [NC,R]

RewriteRule (German|English)\/(.*) /index.php?lang=$1&inc=$2 [NC]
于 2013-03-01T11:32:28.607 に答える