Если у вас есть такой многоязычный сайт:
example.com/en/some-folder/some-file
example.com/ru/some-folder/some-file
example.com/et/some-folder/some-file
Можно ли поймать «ru», «en» и «et» в переменную PHP, такую как $ lang, и в то же время иметь каталог, который выглядит так, используя только htaccess?
HTDOCS / некоторая папка / некоторые-file.php
Вместо:
HTDOCS / о / некоторая папка / некоторый-file.php
HTDOCS / RU / некоторая папка / некоторые-file.php
HTDOCS / эт / некоторая папка / некоторые-file.php
Я хочу иметь возможность не создавать заново все папки и файлы для каждого из языков. Но я также хочу поймать язык в URL в переменную и игнорировать его, как будто он не существует.
Вы можете использовать это в своем .htaccess
:
RewriteEngine on
RewriteRule ^(en|ru|et)(/.*)$ $2?lang=$1 [NC,L,QSA]
перезапись example.com/en/some-folder/some-file.php
в example.com/some-folder/some-file.php?lang=en
Других решений пока нет …