PHP & Postfix Zeilenumbrüche

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
nixix
Posts: 62
Joined: 2003-11-29 14:42

PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-18 18:19

Hallo zusammen.

Seit heute, (nach einem Postfix-Update, ich kann das leider nicht mehr genau nachvollziehen) werden alle E-Mail welche von PHP Scripts geberiert werden mit doppelten Zeilenumbrüchen ausgeliefert.

Früher wurden die Mails so generiert:

Zeile 1
Zeile 2
Zeile 3

Das kommt jetzt aber so an:

Zeile 1

Zeile 2

Zeile 3

Auf dem Server, sieht der Mail Quelltext so aus:

Zeile 1^M
Zeile 2^M
Zeile 3

Das ^M war früher (also gestern noch) noch nicht da.

Wo wird das generiert?
Wie bringe ich das wieder weg?

Danke und Gruss,
NiX

adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: PHP & Postfix Zeilenumbrüche

Post by adjustman » 2006-09-19 00:53

aalso :wink:
DAS hab ich auch seit geraumer Zeit und hab viel versucht und Google befragt.
Leider bis heut keine Lösung. Ich bin mal gespannt, welche Reaktionen hier kommen.
Wahrscheinlich gar keine. :cry:
Nebenbei bemerkt: Mit Postfix hat das nix zu tun, sondern mit sendmail

duergner
RSAC
Posts: 976
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PHP & Postfix Zeilenumbrüche

Post by duergner » 2006-09-19 01:13

Die ^M kommen normalerweise wenn die Datei Windows Zeilenumbrueche drinnen hat, sprich wenn du eine Datei unter Windows erstellst beim kopieren auf den Rootie nicht konvertierst.

Wieso das allerdings in diesem Zusammenhang auftritt ist mit schleicherhaft.

Ich verwendet fuer die Emails keine Templates die unter Windows erstellt wuerden nehme ich an?

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-19 08:12

Nein, in dieser Zeit wurde noch an den Templates noch an den Scripts etwas geändert. Also Einflüsse von Windows sind auszuschliessen.
Es ging, nach diesen Postfix Sachen plötzlich nicht mehr...

duergner
RSAC
Posts: 976
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PHP & Postfix Zeilenumbrüche

Post by duergner » 2006-09-19 14:45

Hast du schon mal in das Changelog geschaut was bei diesem Postfix Update denn geaendert wurde? Vielleicht gibt das ja einen Hinweis.

adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: PHP & Postfix Zeilenumbrüche

Post by adjustman » 2006-09-19 15:25

duergner wrote:was bei diesem Postfix Update denn geaendert wurde?
Ich habe schon auf der deutschen und am. Liste gefragt. Nix.

duergner
RSAC
Posts: 976
Joined: 2003-08-20 11:30
Location: Pittsburgh, PA, USA

Re: PHP & Postfix Zeilenumbrüche

Post by duergner » 2006-09-19 16:24

Tritt das Problem nur beim Versand mittels PHP auf oder auch wenn du so in der Kommandozeile eine Email verschicken willst?

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-19 16:41

Ich fand auch nichts. Eigentlich kam es einfach so...plötzlich. Meiner Meinung nach.

oxygen
RSAC
Posts: 2179
Joined: 2002-12-15 00:10
Location: Bergheim

Re: PHP & Postfix Zeilenumbrüche

Post by oxygen » 2006-09-19 16:44

Also für mich sieht das immer noch so aus, als wären die Dateien mit einem Windowseditor bearbeitet (oder im Windowsformat gespeichert) las mal über die entsprechenden Dateien dos2unix laufen, z.b. so:
find /var/www/web1/html -type f -name .php | xargs dos2unix

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-19 17:39

weird ... really weird...

Ich hatte auf dem Server nichts (Betonung auf nichts) an den Scripten gemacht.
Plötzlich von einem auf dem anderen Tag gingen diese nicht mehr (Alle, und von jeder Domain, wobei es über 100 Domains und Webseiten sind). (Wieso? Mein Server will es mir nicht sagen)

Ich habe alles Scripte gelöscht und im ASCII Mode (wichtig: ASCII) erneut hochgeladen. Nun gehen diese wieder.

...? Irgendwo ist hier ein Bug. Denke ich. Oder ich laufe immer drum herum.

Gruss,
NiX

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-19 19:24

Nachtrag: Alle Mails die vom Script selber generiert werden gehen, wie gesagt.

Ein Detail ist aber, das alle Variablen, die bei PHP über $_POST (vielleicht auch $_GET?) kommen immer noch diese blöden beiden Zeilenumbrüche haben.
Das ist nicht sonderlich verherend, aber enorm nervend.


Grüsse,
NiX

oxygen
RSAC
Posts: 2179
Joined: 2002-12-15 00:10
Location: Bergheim

Re: PHP & Postfix Zeilenumbrüche

Post by oxygen » 2006-09-19 20:18

Hm. Vielleicht ungebetene Gäste?

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-19 21:23

Auch das möchte/darf ich ausschliessen.
Es existiert nur ein User und root.
Alle Protokolle weisen IPs auf, die mir bekannt sind und Rootkits sind auch keine drauf.
Ebenfalls ist alles andere auf dem Server normal.

User avatar
Joe User
Project Manager
Project Manager
Posts: 11578
Joined: 2003-02-27 01:00
Location: Hamburg

Re: PHP & Postfix Zeilenumbrüche

Post by Joe User » 2006-09-20 15:14

Werden bei der Verarbeitung der $_GET/POST die Zeilenenden verändert?
PayPal.Me/JoeUserFreeBSD Remote Installation
Wings for LifeWings for Life World Run

„If there’s more than one possible outcome of a job or task, and one
of those outcomes will result in disaster or an undesirable consequence,
then somebody will do it that way.“ -- Edward Aloysius Murphy Jr.

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-20 15:19

Nein, da wird eigentlich nichts Spezielles gemacht.
Die werden ganz normal eingelesen (ohne Konvertierungen, auch ohne Funktionen wie addslashes) und ohne zu überprüfen gleich gemailt.

Ich werde das Gefühl immer noch nicht los, dass hier trotzdem irgendwie etwas an Postfix ist.

Gruss,
NiX

User avatar
daemotron
Administrator
Administrator
Posts: 2800
Joined: 2004-01-21 17:44

Re: PHP & Postfix Zeilenumbrüche

Post by daemotron » 2006-09-20 15:24

Joe User wrote:Werden bei der Verarbeitung der $_GET/POST die Zeilenenden verändert?
NiXiX wrote:Nein, da wird eigentlich nichts Spezielles gemacht.
[...]
Ich werde das Gefühl immer noch nicht los, dass hier trotzdem irgendwie etwas an Postfix ist.
Da steht's doch. Wenn jemand von einer Windose was per POST oder GET an den Server übermittelt, sind Zeilenenden eben mit CR und LF markiert. Wenn Du die unbearbeitet an Postfix übergibst, wird das halt auch so verschickt... Nur das unter Unix sowohl LF als auch CR jeweils als Zeilenumbruch interpretiert werden...

Und wenn script-generierte Mails problemlos aussehen, liegt's auch definitiv nicht an Postfix.

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-20 15:29

jfreund wrote:Da steht's doch. Wenn jemand von einer Windose was per POST oder GET an den Server übermittelt, sind Zeilenenden eben mit CR und LF markiert. Wenn Du die unbearbeitet an Postfix übergibst, wird das halt auch so verschickt... Nur das unter Unix sowohl LF als auch CR jeweils als Zeilenumbruch interpretiert werden...
Der Gedanken gefällt mir. Kann ich nachvollziehen.
Was mir aber weniger sympatisch vorkommt, ist, dass dies immer funktioniert hat und ohne Änderung an den Scripts nun plötzlich nicht mehr. Hätte ich diesen "Effekt" von Anfang an gehabt, wäre für mich alles klar. Nur dieses plötzliche auftauchen und das gleichen in allen Scripts (was wirklich sehr viele und von verschiedenen Domains sind) ist mir unverständlich.

Gruss,
NiX

User avatar
daemotron
Administrator
Administrator
Posts: 2800
Joined: 2004-01-21 17:44

Re: PHP & Postfix Zeilenumbrüche

Post by daemotron » 2006-09-20 22:50

OK, das sollte sich aber leicht prüfen lassen. Geh einmal von Linux aus per Konqueror drauf und einmal von Windows mit dem IE - wenn's beidesmal zu den unerwünschten Umbrüchen kommt, liegt es entweder an der sendmail-Komponente oder an PHP.

flo
RSAC
Posts: 2297
Joined: 2002-07-28 13:02
Location: Berlin

Re: PHP & Postfix Zeilenumbrüche

Post by flo » 2006-09-20 23:36

Code: Select all

auto_detect_line_endings
könnte auch das Problem sein - findest Du in der php.ini.

flo.

adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: PHP & Postfix Zeilenumbrüche

Post by adjustman » 2006-09-21 14:25

oxygen wrote:Also für mich sieht das immer noch so aus, als wären die Dateien mit einem Windowseditor bearbeitet (oder im Windowsformat gespeichert) las mal über die entsprechenden Dateien dos2unix laufen, z.b. so:
find /var/www/web1/html -type f -name .php | xargs dos2unix
ich muss wohl `n paar Scripts übersehen haben. :wink:
Bei mir gehts jetzt.

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-21 19:20

adjustMan wrote: ich muss wohl `n paar Scripts übersehen haben. :wink:
Bei mir gehts jetzt.
Bei $_POST auch? Da spinnt er bei mir zusätzlich immer noch.

Gruss,
NiX

adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: PHP & Postfix Zeilenumbrüche

Post by adjustman » 2006-09-21 19:59

NiXiX wrote:Bei $_POST auch?
äähm, ka. Ich hab einfach alle Ordner "behandelt" :wink:

nixix
Posts: 62
Joined: 2003-11-29 14:42

Re: PHP & Postfix Zeilenumbrüche

Post by nixix » 2006-09-21 21:40

adjustMan wrote: äähm, ka. Ich hab einfach alle Ordner "behandelt" :wink:
Ne, ich scheine da wirklich ein anderes Problem, irgendetwas mit der Postfix-Schnittstelle oder so zu haben.
Habe dies sicherheitshalber trotzdem mal aus ausprobiert, aber half wie gesagt nichts.

Naja, wichtig ist ja, dass es im Script wieder geht. $_POST ist halt eben nur ein ganz wüster Nebeneffekt...

Gruss,
NiX

adjustman
Posts: 1132
Joined: 2003-03-26 23:29
Location: SA

Re: PHP & Postfix Zeilenumbrüche

Post by adjustman » 2006-10-01 02:00

ich habe jetzt mein php downgraded auf das "hauseigene" von Debian.
UND - der Effect ist wieder da. :cry:
Kein dos2unix hat geholfen.

os-t
Posts: 65
Joined: 2006-06-05 16:06

Re: PHP & Postfix Zeilenumbrüche

Post by os-t » 2006-10-01 10:34

Ich hatte vor einigen Jahren mal nen ähnlichen Effekt und hab mir die Finger wundgetippt auf der Suche. Herausgestellt hat sich dann, dass es (wie hier ja auch schon angemerkt) daran lag, dass eben manchmal ein Windows-User etwas in das Formular eingetippt hat und dabei eben Windows-Umbrüche verwendete, die erzeugten dann (durch verschiedene PHP/Postfix/Skript Config-Geschichten) doppelte Umbrüche.
Am besten geht ihr nochmal jedes Skript einzeln durch und untersucht es darauf, ob der USER evtl. die Umbrüche in die Mail generiert, wenn das der Fall ist, dann habt ihr hier Euer Problem.

Gruß