0

私は自分のプロジェクトに MVC 構造を持っています:example.com/class/function/param

プロジェクトがルートフォルダーまたはサブフォルダーにある場合、私はそれを持っているhttp://example.com/か、それhttp://example.com/project/に基づいています。

私の目標はリダイレクトです:

http://example.com/ -> http://example.com/en/ 
http://example.com/project/ -> http://example.com/project/en/

http://example.com/**en**/同等の言語に置き換える必要があります(例:/ de /、/ ru /、...)ので、疑似コードでは:

{base_url}/{lang}/{class}/{function}/{param}

http://example.com相対パスで定義してください!

次に、URL の最初のセグメント ( /en/ ) を選択し、関数で言語を変更できます。

私の現在の.htaccessファイル:

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule . index.php [L]
</IfModule>

# Prevent file browsing
Options -Indexes

編集:

Router.phpURL書き換えを扱うクラスを検討中…

4

1 に答える 1

0

htaccess で直接行うことはできません。ユーザー言語を取得することはできますが、この情報を使用して、希望どおりに正確に URL を作成することはできません (htaccess で fr_FR を取得した場合、URL に fr のみを含めることはできません)。

PHP で URL を書き換える必要があります。https://stackoverflow.com/a/16389034/2806497を参照してください

于 2013-11-12T16:47:52.487 に答える