Leitfaden: Encoding / Charset einer Seite in nginx ändern
Die Zeichencodierung (Encoding/Charset) legt fest, wie Zeichen einer Webseite intern gespeichert und an den Browser übermittelt werden.
Ein falsches Charset kann dazu führen, dass Inhalte im Browser verstümmelt oder unlesbar angezeigt werden - zum Beispiel „ö“ statt „ö“.
Typische Probleme:
- Eine MySQL-Datenbank ist auf Latin-1 (ISO-8859-1) konfiguriert, während die Webseite eigentlich UTF-8 erwartet.
- Unterschiedliche Systeme (z.B. Datenbank, CMS, Webserver) verwenden nicht dasselbe Charset.
- Proxy- oder FastCGI-Server liefern bereits einen Content-Type-Header mit Charset, das nicht passt.
nginx bietet eine einfache Möglichkeit, die Charset-Angabe im HTTP-Header festzulegen oder zu überschreiben.
Wichtig: nginx konvertiert Inhalte nicht automatisch, sondern weist dem Browser lediglich an, welches Charset verwendet werden soll. Wenn der Content in diesem Charset vorliegt, reicht das für die korrekte Darstellung.