Перенаправление языка.htaccess в виртуальную папку

Я пытаюсь перенаправить в виртуальную папку, если определенный язык не обнаружен, но это не работает:

RewriteCond %{HTTP:Accept-Language} ^!dk [NC] #if language isn't "dk"
RewriteRule ^$ /en/ [L,R=301]                 # rewrite to folder
RewriteRule ^en/(.*)$ /$1 [L,NC]              # virtual folder

Что мне нужно:

если кто-то с языком, отличным от "dk", посещает url.to/page.html, его следует перенаправить на url.to/en/page.html, в противном случае он должен оставаться в корневой папке (url.to/page.html).

Спасибо за помощь!

1 ответ

Попробуйте добавить еще одно условие в ваше первое правило:

RewriteCond %{HTTP:Accept-Language} ^!dk [NC]
RewriteCond %{THE_REQUEST} \ /+(?!en/).*
RewriteRule ^(.*)$ /en/$1 [L,R=301]
RewriteRule ^en/(.*)$ /$1 [L,NC]
Другие вопросы по тегам