Я пытался заставить работать язык в стиле википедии.Так что URL будет en.example.com
для английского, fr.example.com
для французского и т. Д. ... Это работает нормально, однако я бы хотел, чтобы в области администратора всегда использовался базовый язык по умолчанию, т. Е. Не устанавливать переменную среды LANGUAGE.Я пытался добавить RewriteCond %{REQUEST_URI} !^admin [NC]
, но это, похоже, не дает никакого эффекта.
Мой код mod_rewrite выглядит следующим образом:
# Handle languages
# Picks up the language code from the browser accept-language parameter
RewriteCond %{HTTP:Accept-Language} ^([a-z]{2}).*$ [NC]
RewriteCond %{HTTP_HOST} !^[a-z]{2}\.[a-z]{2,}\. [NC]
RewriteRule ^(.*)$ http://%1.%{HTTP_HOST}/$1 [R=301]
RewriteCond %{REQUEST_URI} !^admin [NC]
RewriteCond %{HTTP_HOST} ^([a-z]{2})\.[a-z]{2,}\. [NC]
RewriteRule ^(.*)$ - [ENV=LANGUAGE:%1,QSA]
# Redirecting all requests to one script
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([\+a-zA-Z0-9,%\(\)\_\ -/]+)$ /index.php [NC,L,QSA]
Спасибо за любую помощь, я уверен, что это что-то действительноглупо, что не так, как обычно.