0

次のような URL を書き換えることは可能ですか。

http://www.domain.com/?language=en
http://www.domain.com/contact?language=en

に:

http://www.domain.com/en/
http://www.domain.com/en/contact

私がこれまでに持っているもの:

RewriteEngine on
RewriteRule ^([^/]+)/([^/]+)/?$ index.php?language=$1 [QSA,L]

http://www.domain.com/en/ <- Gives a server not found error
http://www.domain.com/en/contact <- Goes to the main root (/index.php) and give the en variable
4

1 に答える 1

1

これを試して:

<IfModule mod_rewrite.c>

  Options +FollowSymLinks
  RewriteEngine On
  RewriteBase /

  RewriteRule ^(en|fr)(/(.*))$ $2/index.php?language=$1 [L]

</IfModule>

ノート:

fr複数の言語の例を見ることができるように、そこに追加しました。また、これは index.php スクリプトへの内部リダイレクトになります。

編集:

URI の言語部分の後のものを許可するように改訂されました。あなたが望むように動作するはずです。

正規表現の良いリファレンスは次のとおりです。

http://www.regular-expressions.info/reference.html

于 2012-06-13T14:53:51.140 に答える