Seltsames Phänomen Emailversand 2.2.7

Hast du einen Fehler in der aktuellen Version gefunden ? Diesen kannst du uns hier mitteilen und uns bei der Fehlersuche helfen.
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Bei uns tritt das Problem mit den Umlauten auch seit kurzem auf: Beim Versand von Emails an Mitglieder, die einen Umlaut im Namen haben kommt die Meldung: "Die E-Mail konnte nicht an die Rolle ... gesendet werden".

Interessant dabei ist, dass ich nichts an unserem System verändert oder Updates gemacht habe. Allerdings hat unserer Webhoster 1&1 in der Woche vom 17. bis 21. Oktober eine Umstellung auf Apache 2.2 vorgenommen. Das passt genau mit dem Zeitraum zusammen, als ich die ersten Fehlermeldungen bekam. Hier ein Auszug aus der Email von 1&1:
Neben noch besserer Performance und noch mehr Sicherheit beinhaltet
die Umstellung auch ein Upgrade auf folgende Komponenten:

Apache 2.2

http://apache.org/

Bitte beachten Sie, dass sich beim Wechsel einige Änderungen in der
Laufzeit-Konfiguration ergeben haben.
So erreichen Sie beispielsweise mit der Anweisung 'IndexOptions FancyIndex'

nun die Funktion, die vorher das inzwischen hinfällige 'FancyIndex On'
zur Verfügung stellte.

http://httpd.apache.org/docs/2.0/upgrading.html

Nutzen Sie sehr alte Skripts oder Software? Wir möchten Sie darauf
hinweisen, dass gewisse interne Variablen, wie zum Beispiel 'REMOTE_USER',
künftig nach einem Redirect durch den Apache nur noch als
'REDIRECT_REMOTE_USER'
zur Verfügung stehen.

Python 2.6
http://www.python.org
http://docs.python.org/release/2.6.7/whatsnew/2.6.html

Perl 5.10.1
http://perldoc.perl.org/
http://perldoc.perl.org/5.10.1/index.html

Alle diese Upgrades stehen Ihnen nach der Umstellung automatisch zur
Verfügung.
Der Verdacht liegt also sehr nahe, dass es mit der Umstellung auf Apache 2.2 zu tun hat. Ich habe mittlerwile Admidio 2.2.8 drauf, bringt leider keine Verbesserung.

Liebe Entwickler, es wäre super, wenn hierfür recht bald eine Lösung gefunden werden könnte. Danke für euer Engagement!

Uli
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hallo zusammen,

also ich denke im Moment nicht, dass es ein Fehler in Admidio ist, sondern eher ein Konfigurationsproblem, welches natürlich auch durch eine Serverumstrllung verursacht werden kann.

2 Fragen hab ich noch zu eurer Konfiguration:

Legt jetzt testweise mal einen neuen User mit Umlauten an und ordnet ihm eine Rolle zu. Funktioniert nun der Mailversand?

Schaut mal bitte mit phpMyAdmin in eure Datenbank. Was für eine Kollation steht hinter den Tabellen?

Viele Grüße
Fasse
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Hallo Fasse,

ich hatte bereits einen neuen User mit Umlauten in einer neuen Rolle angelegt. Auch hier funktioniert der Emailversand nicht. Sobald ich den Umlaut aus dem Namen entferne geht's ohne Probleme, selbst wenn in der Ansschrift (Straße) Umlaute vorhanden sind.

In meiner Datenbank steht als Kollation in sämtlichen Tabellen "utf8_unicode_ci".

Grüße
Uli
Benutzeravatar
Thomas-RCV
Former team member
Beiträge: 786
Registriert: 1. Aug 2011, 15:06

Beitrag von Thomas-RCV »

Hallo zusammen,
auch ich habe keinerlei Änderungen vorgenommen und ich glaube noch zu wissen, daß am Anfang alles funktioniert hat, bin mir aber nicht sicher.
Also ist das Thema grad bei 1&1 und das könnte vielleicht mit deren Update zu tun haben,...

Bei mir geht es auch nicht, sobald in Vorname oder Nachname ein Umlaut auftaucht, grad nochmal getestet mittlerweile auch mit der 2.2.8

Koallation ebenfalls:

utf8_unicode_ci


Gruss Thomas
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hmm, ihr seit beide bei 1&1. Vielleicht kann man da mal nachfragen. Evlt. haben andere Webseitenbetreiber schon was in der Richtung gemeldet und sie haben vielleicht einen Tipp.

Ich weiß im Moment wirklich nicht, wo hier das Problem liegt.
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Ich habe letzte Woche eine Support-Anfrage bei 1&1 gestartet. Eine Antwort ließ auf sich warten...

Zwischenzeitlich habe ich eine neue Datenbank bei 1&1 eingerichtet und testweise Admidio 2.2.8 komplett neu installiert. Ein einziger Benutzer mit dem Namen "Test Test" und der Email-Adresse "ulrich.schirm@gmx.de" wurde erstellt. Erwarungsgemäß hat der Mailversand einwandfrei funktioniert. Nachdem ich den Namen auf "Test Testü" änderte, kam beim Mailversand wieder die Fehlermeldung.

Gestern rief mich ein 1&1-Mitarbeiter an und versicherte mir, dass es nicht an der neuen Server-Betriebsumgebung läge, sondern an meinem PHP-Script. Die entsprechende Fehlermeldung sei im Mail-Log zu finden. Was genau den Fehler auslöst, konnte er mir leider nicht beantworten, da müsse man sich mit dem PHP-Script auseinandersetzen, wofür 1&1 aber keinen Support leistet.

Ich habe mir die Log-Datei angesehen und ganz am Ende folgenden Eintrag gefunden:
SCRIPT=/test/admidio/adm_program/modules/mail/mail_send.php -- /usr/sbin/sendmail -t -i
2011-10-30 18:43:19 p8059941 4ALr7g-1RdtVp1l6s-00PySV EE invalid mail addresses: "Test Test\374 <ulrich.schirm@gmx.de>" 2011-10-30 18:43:19 p8059941 4ALr7g-1RdtVp1l6s-00PySV EE no valid recipient addresses
Man sieht hier, dass das "ü" in dem Namen "Testü" als "\374" kodiert wird. Ich kenne mich mit UTF8 zwar überhaupt nicht aus, aber entspricht das nicht eher ISO-8859-1?
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hallo Uli,

die Logdatei ist schon ein guter Hinweis. Ich glaub ich weiß wo der Fehler liegt.

Wir verschicken die E-Mail noch in Iso-8859-1, da einige Emailer noch Probleme mit UTF8 hatten.

Ich meld mich zum We noch mal.

Viele Grüße
Fasse
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Super, danke! Und Grüße, Uli.
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hallo Uli,

geh mal bitte in die Datei adm_program/system/classes/email.php und ersetz dort die Zeilen 524ff:

Code: Alles auswählen

         if (!mail(utf8_decode(stripslashes($mailto)), utf8_decode(stripslashes($subject)),
                   utf8_decode(stripslashes($this->mail_body)), utf8_decode(stripslashes($this->mail_properties))))
durch folgende :

Code: Alles auswählen

         if (!mail(mb_encode_mimeheader(stripslashes($mailto), 'UTF-8', 'Q'), mb_encode_mimeheader(stripslashes($subject), 'UTF-8', 'Q'),
                   utf8_decode(stripslashes($this->mail_body)), utf8_decode(stripslashes($this->mail_properties))))
Nun müsste der E-Mail-Versand mit Sonderzeichen funktionieren.

Viele Grüße
Fasse
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Hallo Fasse,

hat leider nicht funktioniert, es erscheint immernoch dieselbe Fehlermeldung. Sobald man in das E-Mail-Modul wechselt steht jetzt außerdem ganz oben über dem Banner:
Warning: Cannot modify header information - headers already sent by (output started at /homepages/43/d32568364/htdocs/admidio/adm_program/system/classes/email.php:1) in /homepages/43/d32568364/htdocs/admidio/adm_program/system/overall_header.php on line 54
Leider komme ich nicht an das Mail.Log dran, das wird immer nur wochenweise abgespeichert.
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

Hallo Uli,

da hat sich ein Fehler beim Editieren eingeschlichen.
Schau mal hier: http://www.admidio.org/dokuwiki/doku.ph ... on_dateien

Gruß
Fasse
UliSchirm
Beiträge: 32
Registriert: 9. Nov 2008, 13:06

Beitrag von UliSchirm »

Ok, da habe ich wohl den falschen Editor benutzt, mit Notepad++ ging's dann einwandfrei.

Leider hat sich nichts an der Situation geändert, die Fehlermeldung kommt weiterhin. Ich hab's wieder mit "Test Testü" probiert. Mittlerweile habe ich auch rausgefunden, wo man bei 1&1 die aktuellen Fehlermeldungen findet. Dieser Eintrag wurde eben im Mail.Log hinterlassen:
2011-11-04 10:51:03 p8059941 49zObS-1Qz4BP0S20-0135iN |< REMOTE=92.74.163.73 SCRIPT=/admidio/adm_program/modules/mail/mail_send.php -- /usr/sbin/sendmail -t -i
2011-11-04 10:51:03 p8059941 49zObS-1Qz4BP0S20-0135iN EE invalid mail addresses: "Test\374 Test <ulrich.schirm@gmx.de>" 2011-11-04 10:51:03 p8059941 49zObS-1Qz4BP0S20-0135iN EE no valid recipient addresses
Schade. Ohne das "ü" ging's natürlich.
bernieloehn
Beiträge: 25
Registriert: 28. Jul 2009, 21:40
Wohnort: Heidelberg
Kontaktdaten:

Beitrag von bernieloehn »

Hallo, ich verwende 2.1.1 für zwei unabhängige Vereinigungen, beide bei 1&1 gehostet.

Ich verwende sowieso immer den Notepad++ und habe das Mail-Modul nochmal wie angegeben abgespeichert, geuploaded und dann alles 666 gechmdet.

Dann habe ich eine Mail an jemanden ohne Umlaute und "ß" etc. zu schicken.
Kein Erfolg bzw. immer noch das Problem!

Woran kann es denn nun wirklich liegen?
Benutzeravatar
fasse
Administrator
Beiträge: 6185
Registriert: 12. Nov 2005, 16:06

Beitrag von fasse »

bernieloehn hat geschrieben:Woran kann es denn nun wirklich liegen?
Das ist ja hier genau die Frage!

Welche Php-Version ist bei euch installiert?
bernieloehn
Beiträge: 25
Registriert: 28. Jul 2009, 21:40
Wohnort: Heidelberg
Kontaktdaten:

Beitrag von bernieloehn »

Admidio-Version:
2.1.11 auf Update prüfen

PHP Version:
5.2.17

MySQL Server Version:
5.0.91-log

Safe Mode:
Off

Max. POST-Größe:
8M

Arbeitsspeicher:
90M

Dateiuploads:
On

Max. Upload-Größe:
40M

Max. bearbeitbare Bildgröße:
12.58 MegaPixel

alle PHP-Informationen:
phpinfo()

Debugmodus:
Off
Antworten