Seite 1 von 1

htaccess - Sprachsteuerung

Verfasst: Di 29. Apr 2014, 08:48
von sarronsarron
Hallo,

für eine htaccess Abfrage benötige ich eure Hilfe. Eine Domain soll je Spracheinstellung geroutet werden.

Domain ist immer die gleiche www.domain.de

Wenn jemand die Domain aus Deutschland aufruft soll auf www.domain.de/de verweisen werden
Wenn jemand die Domain aus England aufruft soll auf www.domain.de/en verweisen werden
Wenn jemand die Domain aus Frankreich aufruft soll auf www.domain.de/fr verweisen werden

wenn jemand aber eine Seite z.B. www.domain.de/news/artikel1.html gebookmarkt hat soll immer diese Seite aufgerufen werden, egal in welchem Land der User sitzt.

Ist das per htaccess möglich?

Gruß sarronsarron

Re: htaccess - Sprachsteuerung

Verfasst: Di 29. Apr 2014, 12:11
von xmurrix
Hallo sarronsarron,

es gibt für den Apache-Webserver mod_geoip, damit sollte es möglich sein.

Vermute mal dass das aber Performancelastig sein kann, es sollte vielleicht nicht bei jedem Request verwendet werden.

Gruß
xmurrix

Re: htaccess - Sprachsteuerung

Verfasst: Di 29. Apr 2014, 12:59
von Zuschauer
Das ist einfach :)
Pro Sprache braucht es 3 Zeilen (bis auf die Standardsprache die für alle nicht-gefundenen geladen werden soll, da braucht es nur 2):

Code: Alles auswählen

# Redirect to the appropriate speach if none is in the URL
RewriteCond %{REQUEST_URI} ^/$
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule ^(.*) http://www.domain.de/en/$1 [R,L]

RewriteCond %{REQUEST_URI} ^/$
RewriteRule ^(.*) http://www.domain.de/de/$1 [R,L]
Die drei Zeilen in Klartext:
  • Wenn nichts hinter der Domain steht
  • Wenn die Browsersprache anfängt mit ..
  • Dann route hierhin, zeige es im Browser (R) und verlasse die .htaccess (L)
Bei R kann man noch einen Statuscode angeben (R=302), 302 ist standard (302 = temporary redirect, 301 = permanent redirect).

Gruß
Zuschauer

Re: htaccess - Sprachsteuerung

Verfasst: Di 29. Apr 2014, 13:24
von sarronsarron
Danke,

werde es morgen gleich ausprobieren.

Gruß sarronsarron

Re: htaccess - Sprachsteuerung

Verfasst: Di 29. Apr 2014, 15:27
von Zuschauer
In Firefox kannst du zum Testen die Liste der Sprachen ändern (Reihenfolge reicht schon): Einstellungen - Inhalt - Sprachen - [Wählen]

Gruß
Zuschauer