Horde Umlaute in der Signatur

mail
german

#1

Hallo Zusammen,

Ich habe bei einem UGS System (2.4.0-4) das Problem, dass ich keine Umlaute in der Signatur verwenden kann da sonst die Signatur nicht gespeichert wird.

Bei der Fehlersuche bin ich unter anderem auf diesen BUG gestossen:
forge.univention.org/bugzilla/s … i?id=20660
leider wird dort verschwiegen wie die Lösung nun für “einen Kunden” aussieht.

In den Hordelogs findet sich beim Speicherversuch folgende Fehlerausgabe:

Sep 23 17:05:29 HORDE [error] [imp] DB Error: unknown error: UPDATE horde_prefs SET pref_value = 'a:1:{i:0;a:13:{s:2:"id";s:4:"sygr";s:8:"fullname";s:14:"System SyGroup";s:9:"from_addr";s:14:"sygr@radiox.ch";s:16:"default_identity";s:1:"0";s:12:"replyto_addr";s:0:"";s:10:"alias_addr";a:0:{}s:10:"tieto_addr";a:0:{}s:8:"bcc_addr";a:0:{}s:9:"signature";s:7:"o
�
o";s:10:"sig_dashes";i:0;s:9:"sig_first";i:0;s:14:"save_sent_mail";i:1;s:16:"sent_mail_folder";s:9:"sent-mail";}}' WHERE pref_uid = 'sygr@radiox.ch' AND pref_name = 'identities' AND pref_scope = 'horde' [nativecode=ERROR:  invalid byte sequence for encoding "UTF8": 0xf60d0a6f
HINT:  This error can also happen if the byte sequence does not match the encoding expected by the server, which is controlled by "client_encoding".] [pid 18411 on line 248 of "/usr/share/horde3/lib/Horde/Prefs/sql.php"]

In /var/www/horde3/config/conf.php ist das charset:

$conf['sql']['charset'] = 'utf8';

Die Datenbanken in PostgreSQL sehen wie folgt aus:

postgres=# \l
        List of databases
   Name    |  Owner   | Encoding 
-----------+----------+----------
 horde     | postgres | UTF8
 postgres  | postgres | UTF8
 template0 | postgres | UTF8
 template1 | postgres | UTF8
(4 rows)

Die Encodings:

horde=# show client_encoding;
 client_encoding 
-----------------
 UTF8
(1 row)

horde=# show server_encoding;
 server_encoding 
-----------------
 UTF8
(1 row)

Ich wäre froh wenn es hier eine andere Option gibt als DB Dumpen, DB mit anderem Encoding anlegen und Daten wieder einspielen?
Bin für jeglichen Input dankbar!

Liebe Grüsse


#2

Hallo,

dieses Verhalten wurde, wie im Bug Tracker beschrieben bereits einmal gemeldet, als die Datenbank in einem abweichenden Encoding angelegt worden ist. Da bei Ihnen scheinbar ein anderes Verhalten vorliegt, wäre interessant ob die Horde Webseite in UTF-8 codiert ausgeliefert wird oder nicht. Evtl. werden die Daten nicht mit UTF-8 sondern bspw. mit Latin in das Formular eingetragen. Dies führt zu Problemen, wenn die Datenbank ein UTF-8 encoding beim Client erwartet.

Zu prüfen wäre dies bspw. am Header der Webseite, der ungefähr so aussehen sollte:

Content-Type: text/html; charset=utf-8

http://www.w3.org/International/O-HTTP-charset

Mit freundlichen Grüßen
Tobias Scherer


#3

Hallo,

ich habe den Patch mit der Lösung für den Kunden im Bug Tracker angehängt. Evtl. ist das hilfreich?

Mit freundlichen Grüßen
Tobias Scherer


#4

Hallo Herr Scherer,

Beim Aufruf von xxxx/horde3/imp/login.php erhalte ich im HTTP Header:

Content-Type: text/html; charset=UTF-8

Ebenfalls beim Aufruf von xxxx/horde3/services/prefs.php? … identities

Content-Type: text/html; charset=UTF-8

Den Patch habe ich noch nicht versucht, muss ich bei dessen anwendung zukünftig auf etwas spezielles achten?

Schonmal vielen dank,
Freundliche Grüsse


#5

Hallo,

bei einer weiteren Prüfung habe ich festgestellt, dass dieser Patch erst mit einer Reihe weiterer Patches Anwendbar ist. Da die daraus resultierende Horde Version einer starken Abweichung vom Produkt entspricht, kann ich die Umsetzung so nicht empfehlen.

Evtl. ist es möglich die Änderungen projektspezifisch zu implementieren. Wenn Sie daran interessiert sind, sprechen Sie am besten unseren Vertrieb an: vertrieb@univention.de

Mit freundlichen Grüßen
Tobias Scherer


#6

Hallo,

ich habe mir das Verhalten noch einmal auf einem UCS 2.4-0 angesehen und hatte keine Probleme beim Setzen einer Signatur mit Umlauten. Diese war auch nach einer erneuten Anmeldung weiterhin verfügbar.

Wurde die Datenbank bei Ihnen mit dem oben genannten encoding bereits angelegt oder ist dieses erst nachträglich gesetzt worden?

Mit freundlichen Grüßen
Tobias Scherer