rbitdd
Returning Responder

Nach Umzug Umlaute defekt

Jump to solution

Hallo Community,

ich musste gestern abend das Projekt von unserem Entwicklungsserver auf den Server des Kunden übertragen, damit diese Contents pflegen können.

Jetzt ist mir aber leider aufgefallen, dass die Umlaute alle defekt sind.

Das Projekt ist in UTF-8 aufgesetzt (Definition in HTML-Template und Projekteinstellungen gesetzt).

Zu erst dache ich, dass es an falschem Encoding der Datenquellen liegt. (Diese waren tatsächlich in ISO)

Jedoch nach dem ich diese Umgebogen habe, haben auch Tests mit neuen Einträgen leider nicht den gewünschten Erfolg gebracht. Smiley Sad

Ein Kollege hat sich mit mir dann die Header angeschaut und wir mussten feststellen, das beim Ausliefern auf dem Kundensystem explizit ISO übertragen wird:

Content-Type    text/html; charset=iso-8859-1
Content-Length    17759
Server    Jetty(6.1.10)

auf unserem System steht bei Content-Type nur text/html.

Hat jemand ne Idee, wo ich das umstellen kann bzw. ob ich etwas anderes falsch gemacht habe. 😞

Thanks in advance!

0 Kudos
14 Replies

Dieser Schalter bewirkt, dass Umlaute in HTML-Entitäten umgewandelt werden. Dadurch wird bei dir das Problem umgangen. Für Ausgabekanäle != HTML will man aber im allgemeinen keine Konvertierung.

Peter
0 Kudos

Ich galub jetzt fällts mir wieder ein, ich habe eine andere Konvertierungsregel genommen (Projekteinstellungen->Vorlagesätzevorlagesatz.jpg)

0 Kudos
rbitdd
Returning Responder

Das ist alles so gesetzt.

0 Kudos

OK, macht Sinn.

Aber wenn man doch in den Projekteinstellungen definieren kann, welches Encoding man für welchen Ausgabekanal möchte, könnte sich doch "standard" daran halten.

0 Kudos

OK, jetzt wird es ganz verwirrend:

Nachdem ich in dem PHP-Header folgendes hinzugefügt habe

"header('content-type: text/html; charset: utf-8');"

erhalte ich jetzt diesen Header:

Content-Typetext/html; charset: utf-8; charset=ISO-8859-1
Content-Length17759
ServerJetty(6.1.10)

Das wird ja immer schlimmer.

Da scheinen mir die Header auch nicht korrekt gesetzt zu werden. Probieren Sie mal folgende Variante:

<?php
  header("Content-Type: text/html; charset=utf-8");
?>

Man beachte das Gleichheitszeichen hinter "charset".

0 Kudos