bigblue2010
13.09.12, 17:36
Hallo Zusammen,
auf meiner Homepage habe ich zwei Sprachen eingestellt, deutsch und englisch. Über RewriteRules habe ich den Apache so eingerichtet, dass er erkennt, mit welcher Sprache der Browser die seite öffnet. Wie man den Rules unten entnehmen kann, sind die Rules so eingerichtet, dass erkannt wird mit welcher Browserlanguage aktiviert ist und deutsche Browser nach "/de/" umleitet und alle anderen Sprachen auf "/" und somit auf die englische Sprache.
Auf der Homepage hat man die Möglichkeit die Sprache zu ändern, in dem man diese in einem Pulldown-Menü auswählt. Jetzt zum Problem wenn, ich die Seite mit einem deutschsprachigen Browser aufrufe und aber auf die englische Sprache wechseln möchte, klappt das nicht. Das liegt natürlich daran, dass die Rewriterules greifen und mich wieder auf "/de" weiterleiten.
Hab ihr mir ein Tipp wie ich das Problem über Apache lösen könnte? Mir fällt einfach kein Lösungsweg ein :(
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
#The 'Accept-Language' header starts with 'de'
#and the test is case-insensitive ([NC])
RewriteCond %{HTTP:Accept-Language} ^de [NC]
#Redirect user to /de/ address
#sending 301 (Moved Permanently) HTTP status code
RewriteRule ^$ /de/ [L,R=301]
Danke & Gruß
Marcus
auf meiner Homepage habe ich zwei Sprachen eingestellt, deutsch und englisch. Über RewriteRules habe ich den Apache so eingerichtet, dass er erkennt, mit welcher Sprache der Browser die seite öffnet. Wie man den Rules unten entnehmen kann, sind die Rules so eingerichtet, dass erkannt wird mit welcher Browserlanguage aktiviert ist und deutsche Browser nach "/de/" umleitet und alle anderen Sprachen auf "/" und somit auf die englische Sprache.
Auf der Homepage hat man die Möglichkeit die Sprache zu ändern, in dem man diese in einem Pulldown-Menü auswählt. Jetzt zum Problem wenn, ich die Seite mit einem deutschsprachigen Browser aufrufe und aber auf die englische Sprache wechseln möchte, klappt das nicht. Das liegt natürlich daran, dass die Rewriterules greifen und mich wieder auf "/de" weiterleiten.
Hab ihr mir ein Tipp wie ich das Problem über Apache lösen könnte? Mir fällt einfach kein Lösungsweg ein :(
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
#The 'Accept-Language' header starts with 'de'
#and the test is case-insensitive ([NC])
RewriteCond %{HTTP:Accept-Language} ^de [NC]
#Redirect user to /de/ address
#sending 301 (Moved Permanently) HTTP status code
RewriteRule ^$ /de/ [L,R=301]
Danke & Gruß
Marcus