مرحبا
> <?php
> $sprache = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
> switch($sprache) {
>
> case 'en': $weiterleitung = 'index_en.html';break;
> default: $weiterleitung = 'index.php';
> }
> header ("location: $weiterleitung");
> ?>
Steht das so in deiner index.php? Selbst wenn du das header-Problem löst, wirst du hier (ungetestet) eine Endlos-Schleife produzieren, da es keine bedingung gibt, die dass weiterleiten beendet.
Und, wie suit schon schrieb, reagiert dein Script nur auf 'en', allerdings gibt es mehr als nur 'en'.
"en" => "English",
"en-gb" => "English/United Kingdom",
"en-us" => "English/United Satates",
"en-au" => "English/Australian",
"en-ca" => "English/Canada",
"en-nz" => "English/New Zealand",
"en-ie" => "English/Ireland",
"en-za" => "English/South Africa",
"en-jm" => "English/Jamaica",
"en-bz" => "English/Belize",
"en-tt" => "English/Trinidad"
Was noch hinzu kommt ist, dass $_SERVER["HTTP_ACCEPT_LANGUAGE"]
auch Leer sein kann, was in deinem Fall zu einer "Notice" führen wird, wenn error_reporting auf on ist.
Ich sitz seit 3 Wochen an einem ähnlichen, allerdings etwas Komplexeren Fall (Undefinierte Anzahl Sprachen); wenn Interesse besteht, kann ich ein paar Snippets posten, die dass ganze vereinfachen.
mfg