Beispiel, per multiview erhalte ich bei entsprechender Spracheinstellung
usw. als eine angefragte xy.html die xy.html.de ausgeliefert, und zwar
als die angeforderte xy.html.Nun wäre es möglich aus der gelieferten xy.html heraus eine xy.html.en.html
Ein .html reicht.
zu laden, um eine anderssprachige Version anzuschauen. Kann jetzt per
mod_rewrite diese xy.html.en.html wieder als xy.html ausgeben werden,
müssten dazu Browser- oder Proxycache überlistet werden?
a) Das macht keinen Sinn. Wenn Du explizit _über die URL_ eine Sprachversion anforderst, dann sollte die URL auch diese Sprachversion wiederspiegeln.
Anders ausgedrückt: "xy.html" bedeutet "sende mir das HTML-Dokument xy in einer mir genehmen Sprache", "xy.html.en" hingegen "sende mir das HTML-Dokument xy in Englisch". Benutze die URL, die dem Auftrag entspricht.
Bitte verabschiede Dich von dem Gedanken, eine URL könne "hässlich" sein, denn "hässlich" ist immer Geschmackssache. Hauptattribute einer URL sollten "verständlich" und "genau" sein, alles andere hat sich dem unterzuordnen.
b) Nein. Der Browser fragt das Objekt ab, das in der Adresszeile angegeben wird. Um die Adresszeile zu ändern, mußt Du dem Browser eine Weiterleitung zu der gewünschten Adresse (also xy.html) übermitteln. Dann fragt er allerdings wieder nur xy.html ab und bekommt die nach Präferenz des Benutzers am besten passende Sprachvariante geliefert.
Die ganze Problematik der Änderung des Inhalts der Adresszeile ist übrigens kein mod_negotiation-spezifisches Problem, sondern ein grundsätzliches: Eine Änderung der Adresszeile ist von Serverseite aus immer nur mit einer Weiterleitung möglich.
Pidder Lüng