Helpdesk
Menschen Wissenschaft Politik Mystery Kriminalfälle Spiritualität Verschwörungen Technologie Ufologie Natur Umfragen Unterhaltung
weitere Rubriken
PhilosophieTräumeOrteEsoterikLiteraturAstronomieHelpdeskGruppenGamingFilmeMusikClashVerbesserungenAllmysteryEnglish
Diskussions-Übersichten
BesuchtTeilgenommenAlleNeueGeschlossenLesenswertSchlüsselwörter
Schiebe oft benutzte Tabs in die Navigationsleiste (zurücksetzen).

Sprachweiterleitung mit mod_rewrite

3 Beiträge ▪ Schlüsselwörter: Sprache, Htaccess, Mod_rewrit ▪ Abonnieren: Feed E-Mail
Seite 1 von 1
AnGSt Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Sprachweiterleitung mit mod_rewrite

08.10.2011 um 23:07
Hallo,

das ist meine .htaccess:

# ohne www. auf mit www.
RewriteCond %{HTTP_HOST} !^www\.torakosmos\.de
RewriteRule (.*) http://www.torakosmos.de%{REQUEST_URI} [R=301,L]

# index.php -> /
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.torakosmos.de/$1 [R=301,L]



das funktioniert wunderbar. und jetzt soll dazu kommen, dass user die englisch bevorzugen, auf /english.php weitergeleitet werden. das geht mit:

RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule ^$ /english.php [R=301]


Der Nachteil dabei ist, dass man dann als englischer user die deutsche seite überhaupt nicht mehr aufrufen kann.

wie mache ich es, dass immer dann, wenn explizit die index.php aufgerufen wird, auch für englische user keine weiterleitung zu english.php stattfindet, in der urlzeile des browsers aber / angezeigt wird (kein doppelter content).

geht das irgendwie?

danke,
ags


melden

Sprachweiterleitung mit mod_rewrite

10.10.2011 um 16:17
@AnGSt

Nimm einfach mal das [R=301] raus, das bedeutet dass der Server den Status-Code 301 an den Client sendet. 301 ist ein permanenter HTTP redirect, daher ändert sich im Browser auch die Adresse.

RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule ^$ /english.php


melden
AnGSt Diskussionsleiter
ehemaliges Mitglied

Link kopieren
Lesezeichen setzen

Sprachweiterleitung mit mod_rewrite

10.10.2011 um 16:35
danke aber geht nicht. ich will ja nicht, dass das /english.php nicht im broswer erscheint, sondern dass ein auf english eingestellter browser bei / auf english weiterleitet (und man das auch sieht), aber trotzdem die deutsche seite anzeigt, wenn explizit index.php (das ist die deutsche seite) eingegeben wird.

Options -Indexes

DirectoryIndex index.php


#AuthType Basic
#AuthName "website bald online"
#AuthUserFile /kunden/106079_81379/torakosmos/.htpasswd
#Require user rein


RewriteEngine on
RewriteBase /

# ohne www. auf mit www.
RewriteCond %{HTTP_HOST} !^www\.torakosmos\.de
RewriteRule (.*) http://www.torakosmos.de%{REQUEST_URI} [R=301,L]

# index.html -> /
RewriteCond %{THE_REQUEST} ^.*/index.php
RewriteRule ^(.*)index.php$ http://www.torakosmos.de/$1 [R=301,L]

## Sprachweiterleitung
RewriteCond %{HTTP:Accept-Language} ^en [NC]
RewriteRule ^$ /english.php


melden

Ähnliche Diskussionen
Themen
Beiträge
Letzte Antwort
Helpdesk: Deutsche keltische Namen?
Helpdesk, 16 Beiträge, am 27.04.2024 von paxito
LuciaFackel am 24.04.2024
16
am 27.04.2024 »
von paxito
Helpdesk: Fernseher - Spracheinstellung
Helpdesk, 20 Beiträge, am 30.04.2024 von Gucky87
thunderhawk am 21.04.2024
20
am 30.04.2024 »
Helpdesk: Video-Titel auf Youtube - Kann man die Übersetzung ausschalten?
Helpdesk, 4 Beiträge, am 20.02.2024 von Nebelstimme
LuciaFackel am 20.02.2024
4
am 20.02.2024 »
Helpdesk: Mikrophone mit Arm, 20 m² Raum, hohe Qualität gesucht
Helpdesk, 10 Beiträge, am 24.09.2024 von NordicStorm
NordicStorm am 21.09.2024
10
am 24.09.2024 »
Helpdesk: Sprache von Windows XP ändern?
Helpdesk, 6 Beiträge, am 23.12.2012 von Donnerseele
Donnerseele am 22.12.2012
6
am 23.12.2012 »