Apache の書き換え - 言語

Apache の書き換え - 言語

書き換えに関していくつか問題があります... 誰か助けてくれませんか?

現在、私はこれを持っています:

Redirect example.com/*/ to example.com/en/* if da,de, and en were not found.

RewriteCond %{REQUEST_URI} !^.*/(da|de|en|en-uk)/.*$
RewriteRule ^(.*)$ /en/$1 [L,R]

これは問題ではありません。問題は次の点にあります。1. example.com/xx/* -> example.com/en/* - (da、de、en|en-uk) に含まれない任意の 2 文字の場合

これをどうやって作るのでしょうか?

答え1

これを試して:

  RewriteCond %{REQUEST_URI} !^/(da|de|en|en-uk)/
  RewriteRule ^/../(.*)$ /en/$1 [L,R]

元のコードにはいくつか問題があるようです。

RewriteCond の末尾にピリオドとドル記号があります。これは /xx/X のみに一致します。末尾の任意の長さに一致させるには、ドル記号を削除します。スラッシュの後の空の一致を可能にするには、ドル記号の前の "." を削除します。

関連情報