Unicode-Voreinstellung im Browser tut nicht bei LAMPP?!?

Irgendwelche Probleme mit XAMPP für Linux? Dann ist hier genau der richtige Ort um nachzufragen.

Unicode-Voreinstellung im Browser tut nicht bei LAMPP?!?

Postby Matthias » 11. May 2003 03:35

Hi!

Ich bin an folgendem Problem schier am Verzweifeln:

Vorneweg: Meine Web-Seite laufen mit UTF-8-Kodierung.
(Also mit META-Angabe charset=UTF-8 in der richtigen Schreibweise).
Alles kein Problem bislang. Die Seiten sind ganz normal gehostet, alles funktioniert.

Nun habe ich einen eigenen Webserver mit LAMPP aufgesetzt. Soweit alles ok, ABER: bei den Seiten, die von meinem neuen Server kommen, wird die Unicode-Voreinstellung NICHT vom Browser angezeigt. Er bleibt bei bei der Codierung Westeuropäisch. Zwar kann ich per Hand umstellen (Codierung->Unicode), doch bei dem nächsten klicken oder aktualisieren ist es wieder weg.

Es gibt keinen Unterschied im Quellcode!
Und eigentlich dürfte doch auch der Server damit garnix zu tun haben, da die Interpretation der Daten meinem Verständnis nach ja Browsersache ist...

Dennoch - in zig Varianten auf verschiedenen Rechnern probiert - die Daten von meinem neuen LAMPP-Server liefern keine Unicode-Voreinstellung in der Ansicht, die Daten vom meinem alten Host-Paket tun dies wie sie sollen....

Ich bin mit meinem Rat am Ende! Vielleicht kann mit jemand von Euch weiterhelfen?

Viele Grüße,
Matthias
Matthias
 

Postby Oswald » 11. May 2003 13:49

Moin Matthias!

Welchen Webserver hast Du vorher benutzt?? Also bei dem es funtkionierte? Ich vermute mal stark, dass es kein Apache war?!

Ich hab mich nie wirklich mit UTF-8 oder anderen Charsets beim Apache beschäftigt, aber ich bin mir ziemlich sicher, dass die von Dir beschriebene Methode beim Apache einfach nicht funktioniert.

Ganz einfach weil beim Apache das META HTTP-EQUIV nicht funktioniert und damit dann auch das Setzten des Charsets nicht. Der Charset wird nämlich nicht wirklich im HTML übertragen sondern eigentlich im HTTP-Header. Und auf diesen HTTP-Header nimmt das META-HTTP-EQUIV-Tag einfluss. Es ist also nicht nur eine Client-Geschichte, sondern auch eine Server-Geschichte.

Fazit

Um Apache dazu zu kriegen einen Text als UTF8 kodiert auszuzeichnen muss die Datei auf .utf8 enden. Bzw es gibt zwei Möglichkeiten:
bla.utf8.html oder bla.html.utf8.

Liebe Grüße,
Oswald ;)
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Einspruch, Euer Ehren...

Postby Matthias » 11. May 2003 23:02

Hi Kai!

Erstmal vielen herzlichen Dank für Deine Antwort! Ohne Dir Honig ums Maul schmieren zu wollen: Großes Lob für Deine Zeit, die Du hier immer für die Probleme der User opferst!

Nun zum Problem:
Ich habe heute den ganzen Tag im Internet nach Lösungen gesucht und bin durch Herumprobieren schließlich auf eine Lösung gekommen. Und die sagt mir, dass Du mit dem Absatz...

>Ganz einfach weil beim Apache das META HTTP-EQUIV nicht funktioniert und damit dann auch das Setzten des Charsets nicht.

...nicht ganz recht hast. Denn: Nur solange in der http.conf der Eintrag

'AddDefaultCharset ISO-8859-1'

gesetzt ist, wird jede Seite vom Browser in diesem Charset automatisch angezeigt. Nimmt man den Eintrag allerdings heraus, entscheidet nun das META-HTTP-EQUIV über die automatische Voreinstellung des Browsers und damit über die richtige Anzeige der Webseite. Und genau das wollte ich erreichen...

Ich empfehle also, diesen Eintrag herauszunehmen, da sonst die META-Angaben im HTML-Header "charset=..." nicht umgesetzt werden...

Viele Grüße,
Matthias
Matthias
 

Postby Oswald » 12. May 2003 11:33

Huhu Matthias!

Ahh... klasse recherchiert. Ich hab's jetzt auch noch mal ausprobiert und folgende Erklärung herausbekommen:

Apache ignoriert wirklich - wie ich schon sagte - META-HTTP-EQUIV wird auch in diesem Fall ignoriert. Nun wird also der Webserver dem Client nicht sagen können, dass es sich bei diesem Dokument um ein UTF-8-Text handelt und es ist am Client das irgendwie festzustellen.

Mein Test mit Mozilla ergab, dass es funktioniert. D. h. Mozilla stellt es richtig dar, meint aber auch nicht wirklich das es UTF-8 ist.

Liebe Grüße,
Oswald
User avatar
Oswald
Apache Friends
 
Posts: 2718
Joined: 26. December 2002 19:51
Location: Berlin, Germany
Operating System: Linux

Postby Hellfighter » 26. August 2004 10:53

Hi,

bei mir läuft ein Apache2 unter Suse9.1. In den Webseiten ist überalle im META-Tag HTTP-EQUIV das Charset UTF-8 angegben.
Den AddDefaultCharset hab ich auf grund euerer Lösung nicht gesetzt.

Doch leider zeigt der IE immernoch die Seiten in Westeuropäisch (ISO) an. Mozilla, Firefox und Konqueror zeigen die Seiten allerdings richtig mit UTF-8 an.

Keine Ahnung woran das liegt - IE oder Apache ?

Edit: Mit dem vorangehenden Webserver IIS gab es damit keine Probleme.

Gruß
Hellfighter
Hellfighter
 
Posts: 16
Joined: 24. August 2004 08:44


Return to XAMPP für Linux

Who is online

Users browsing this forum: No registered users and 54 guests