Zur Navigation

Automatische Weiterleitung

1 ShadowLupina

Hallo mein Chef möchte, dass wenn man den Shop aufruft

http://www.mainbrick.es/shop/index.php

und in Spanien ist...automatisch auf die spanische Seite kommt....er besteht darauf, dass das so umgesetzt wird...wie mach ich das am besten...ich würd sagen über eine IP Weiterleitung, oder

in etwa so dann?

RewriteCond %{ENV:GEOIP_COUNTRY_CODE} ES$
RewriteRule ^(.*)$ http://www.mainbrick.es/shop/index.php[R=301,L]

oder gibt es noch andere wege ohne z.b geoip?

mfg Lupi

06.12.2013 17:00

2 ShadowLupina

Ok ich habe das jetzt doch erst mal über Browsersprache gemacht....und zwar so

RewriteCond %{HTTP:Accept-Language} de [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.de$
RewriteRule ^(.*)$ http://www.mainbrick.de/$1 [R=301,L]

RewriteCond %{HTTP:Accept-Language} com [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.com$
RewriteRule ^(.*)$ http://www.mainbrick.com/$1 [R=301,L]

RewriteCond %{HTTP:Accept-Language} es [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.es$
RewriteRule ^(.*)$ http://www.mainbrick.es/$1 [R=301,L]

#RewriteCond %{HTTP:Accept-Language} en-us [NC]
#RewriteCond %{HTTP_HOST} !^www\.mainbrick\.us$
#RewriteRule ^(.*)$ http://www.mainbrick.us/$1 [R=301,L]

Funktioniert auch mit dem deutschen gut...aber das Problem ist...selbst wenn ich die akzepterte Browsersprache unter den Einstellungen jetzt auf englisch stelle bzw. englisch nach oben ziehe...leidet der weiterhin auf die deutsche seite weiter.....und wenn ich den en-us befehl aktiviere...dann meint er das er die weiterleitung nicht beenden kann...muss ich das anders machen?

oder ist mit accept -language nicht die browsersprache gemeint?

09.12.2013 11:47 | geändert: 09.12.2013 11:48

3 ShadowLupina

und wenn ich deutsch als akzeptierte Sprache ganz rausnehme reagiert dann wird nix mehr weitergeleitet

09.12.2013 11:59

4 ShadowLupina

ach und wenn die beiden gleichzeitg an sind.

RewriteCond %{HTTP:Accept-Language} de [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.de$
RewriteRule ^(.*)$ http://www.mainbrick.de/$1 [R=301,L]

RewriteCond %{HTTP:Accept-Language} en [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.com$
RewriteRule ^(.*)$ http://www.mainbrick.com/$1 [R=301,L]

kommt es auch zu dem Fehler das die Weiterleitung nicht beendet werden kann

09.12.2013 12:03

5 Jörg Kruse

RewriteCond %{HTTP:Accept-Language} de [NC]

Die Bedingung ist erfüllt, wenn "de" irgendwo im String vorkommt.

Wenn mehrere Sprachen unterstützt werden, wird der Browser hin- und hergeleitet

Wenn "de" ganz am Anfang des Strings vorkommen soll, d.h. wenn Deutsch die primäre Sprache ist, musst du noch den Delimiter ^ ergänzen:

RewriteCond %{HTTP:Accept-Language} ^de [NC]

Es gibt nur eine primäre Sprache, also wird auch nur einmal weitergeleitet

09.12.2013 12:19

6 ShadowLupina

Ok danke das funktioniert schon mal, außer für den Fall das en-us aktiviert ist...da sagt er wieder das er diese nicht beenden kann...code..sieht jetzt so aus

RewriteCond %{HTTP:Accept-Language} ^de [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.de$
RewriteRule ^(.*)$ http://www.mainbrick.de/$1 [R=301,L]

RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.com$
RewriteRule ^(.*)$ http://www.mainbrick.com/$1 [R=301,L]

RewriteCond %{HTTP:Accept-Language} ^es [NC]
RewriteCond %{HTTP_HOST} !^www\.mainbrick\.es$
RewriteRule ^(.*)$ http://www.mainbrick.es/$1 [R=301,L]

#RewriteCond %{HTTP:Accept-Language} ^en-us [NC]
#RewriteCond %{HTTP_HOST} !^www\.mainbrick\.us$
#RewriteRule ^(.*)$ http://www.mainbrick.us/$1 [R=301,L]



Gibt es auch eine Möglichkeit das so weiterzuleiten..das bei deutscher Browsersprache, die deutsche Seite bevorzugt wird...aber man über die Flaggen noch andere Sprachen auswählen kann...weil im Moment ist es so, dass ich wenn ich über die Länderauswahl International nehme..ja trotzdem auf die deutsche seite komme..was ja auch so weit logisch ist

09.12.2013 12:38

7 ShadowLupina

Ok...hat sich erledigt...hab das Plugin wieder zum laufen gebracht^^

09.12.2013 15:38

8 Jörg Kruse

^en beinhaltet auch ^en-us

Du kannst ja eine Ausnahme definieren:

RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteCond %{HTTP:Accept-Language} !^en-us [NC]

Gibt es auch eine Möglichkeit das so weiterzuleiten..das bei deutscher Browsersprache, die deutsche Seite bevorzugt wird...aber man über die Flaggen noch andere Sprachen auswählen kann...weil im Moment ist es so, dass ich wenn ich über die Länderauswahl International nehme..ja trotzdem auf die deutsche seite komme..was ja auch so weit logisch ist

Dazu könntest du die Flaggenlinks über ein PHP-Script führen, welches ein Cookie setzt.

So etwas ähnliches habe ich in diesem Thread beschrieben:

https://joergs-forum.de/umleitung-mobile-website-und-zurueck-t-4225-1

Ok...hat sich erledigt...hab das Plugin wieder zum laufen gebracht^^

Dann halt für diejenigen, die bei der Suche nach so einer Lösung auf diesen Thread stoßen :)

09.12.2013 15:41 | geändert: 09.12.2013 15:41

9 ShadowLupina

Vielen Dank^^...das wird mir bestimmt später auch für andere Probleme helfen^^

09.12.2013 17:39

Beitrag schreiben (als Gast)

Die Antwort wird nach der Überprüfung durch einen Moderator freigeschaltet.





[BBCode-Hilfe]