HTML UTF-8 Kodierung

Immer wieder sehe ich Webseiten wo Sonderzeichen oder auch "German Umlauts" falsch dargestellt werden. Nun hatte auch ich mal dieses Problem auf einem Billighoster ;) Also macht ich mich an der Fehlerfindung. Als erstes habe ich mit der Bash überprüft ob die entsprechende Datei wirklich UTF-8 kodiert ist. Falls das Programm file nicht installiert ist, installiert es jetzt!

$ file index.html
index.html: HTML document, UTF-8 Unicode text
Hier stimmte also alles. Falls das bei euch nicht stimmen sollte erwingt in eurem HTML-Editor das Dateien als UTF-8 gespeichert werden.

Auch der Meta-Tag war im HTML-Dokument richtig gesetzt.

<head>
<meta content="text/html; charset=utf-8" http-equiv="content-type"/>
</head>

Ich dachte ist doch alles richtig, wieso werden die Umlaute nicht dargestellt? Die Dateien auf dem Server waren richtig kodiert und der Header stimmte auch, dann habe ich aber gelesen, dass manche Webserver einen eigenen Header senden und genau so war es. Ich finde es ja fragwürdig wenn 2013 manche Defaulteinstellungen beim Hoster immer noch iso-8859-1 sind, aber mit dem anlegen einer .htaccess konnte ich das Problem, mit diesen Eintrag beheben.

AddDefaultCharset utf-8
AddCharset utf-8 .html .php .css
Nun kann man die Umlaute auch sehen ohne sie in HTML-Entities umwandeln zu müssen.

Update: Hier noch ein Link zu File Coding Checker für Windows um Dateien zu prüfen.

Tags:

Die letzten Einträge