clschak
Goto Top

Web-Proxy für Spracheinstellungen

Hallo Zusammen

ich habe hier eine kleiner Herausforderung wo ich ein wenig Unterstützung benötige:

Wir haben eine Webapplikation die Mehrsprachig ist (alles was gängig ist), die Anforderung ist allerdings, dass jeder User der über den Browser nicht die Sprache "deutsch" mitliefert (bspw. FR oder ITA) so eingestellt wird, dass der für diesen Webdienst den Sprachcode Englisch anfordert. Damit soll sichergestellt werden, dass die angezeigte Sprache immer Englisch oder Deutsch ist. Leider kann man die restlichen Sprachen nicht deaktivieren in der Applikation (was unsere erste Idee war).

Ich bin mittlerweile soweit, dass man das via WPAD Datei und einem Proxy lösen kann, allerdings bin ich mir noch ein wenig unschlüssig über die Wahl des Proxies (egal ob OS oder Payed) und der damit verbundene Verwaltungsaufwand, das ganze sollte recht simpel sein, da wir nicht planen, den gesamten Traffic darüber abzubilden sondern lediglich die eine Webapplikation und das sollte nicht mit einem erheblichen Mehraufwand einhergehen face-wink.

Vielleicht kann mir da einer auf die Sprünge helfen :>

Oder gibt es evtl. eine einfacherer Lösung dafür die man ggf. nur auf den Client vornehmen kann das der für eine bestimmte URL immer den Sprachcode EN anfordert?

Gruß
@clSchak

Content-Key: 8085826877

Url: https://administrator.de/contentid/8085826877

Printed on: May 18, 2024 at 06:05 o'clock

Mitglied: 7907292512
7907292512 Aug 09, 2023 updated at 13:30:24 (UTC)
Goto Top
Moin.
Also ein Anpassen des Accept-Language Headers über einen (reverse) Proxy wäre möglich nginx wäre etwa eine Option wenn man dort per IF den Header prüft und angepasst an den internen Server übermittelt.
ungetestet etwa so (nginx)
location / {
    set $newlang $http_accept_language;
    if ( $http_accept_language !~* "de" ){  
        set $newlang "en"  
    }
    proxy_set_header Accept-Language $newlang;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_pass https://domain.tld;
}

Ich würde da eher direkt an der Applikation ansetzen und für alternative Sprachen die englische Übersetzungsdatei auf diese Sprachen mappen, bzw. ein Fallback auf Englisch sofern die Sprache nicht vorhanden ist.

Gruß siddius
Member: clSchak
clSchak Aug 09, 2023 at 08:38:54 (UTC)
Goto Top
Die Applikation können wir leider so nicht anpassen, da ein Teil bei Amazon AWS hängt und der Hersteller leider keine inidividual Lösung zulässt face-sad
Mitglied: 7907292512
7907292512 Aug 09, 2023 updated at 08:43:52 (UTC)
Goto Top
Dann probiert es mal einen Reverse-Proxy mit add_header direktive in einer Condition, oben ein Beispiel hinzugefügt wie es in etwa aussehen könnte.