![]() Mailinglisten-Archive |
> Also, ich war doch sehr verwundert, dass ich wirklich so dumm sein > sollte. Um's direkt auszur�umen, und auch deine andere Mail > mitzubeantworten (danke �brigens f�r deine Hilfsbereitschaft): > > /etc/msmtprc ist kein Pfad, sondern die Konfigurationsdatei Das wusste ich nicht. Warum nennen die Ihre Konfigurationsdatei einmal ".msmtprc" und das andere Mal "msmtprc"? > -C /etc/msmtprc mit Leserechten f�r www-data h�tte also ausreichen m�ssen. Das stimmt. [Steht in "/etc/msmprc" bei Dir eigentlich das gleiche drin wie in "~/.msmprc"?] > Da ich an der bash als User mal eine Meldung bekommen habe, dass die > Datei dem User geh�ren m�ssen, habe ich es auch noch mit > /etc/msmtprc-www-data , owner www-data, Rechte 0600 versucht, leider > auch ohne Erfolg. Die Frage ist erst einmal, wer f�hrt bei Dir PHP aus bzw. wer lighttpd (falls PHP dort als Modul l�uft). Die Konfigurationsdatei ben�tigt dann denselben User. [Dies muss nicht unbedingt www-data sein, wenn es auch meist der Fall ist. "sudo ps -ef" gibt Dir einen �berblick �ber die aktuellen Prozesse und unter welchem Nutzer sie laufen.] > php.ini habe ich angepa�t, auch den Eintrag mit -C mal auskommentiert, > lighttpd immer neu gestartet (der f�hrt php als fcgi aus und l�uft unter > www-data), aber ohne Erfolg. Der sendmail_path-Eintrag muss drinbleiben! Sonst wei� PHP nicht welches Programm es zum Verschicken der Mail aufrufen muss. Der SMTP-Eintrag sollte besser raus... damit PHP nicht auf die Idee kommt direkt mit dem SMTP-Server zu kommunizieren. > Zum Thema Leserechte vs. Ausf�hrrechte zitiere ich jetzt mal die manpage: > "The user configuration file must have no more permissions than user > read/write. Configuration data from either file can be changed by > command line options." Das ist immer der Fall, wenn die Konfigurationsdatei dem User geh�ren muss, der das Programm ausf�hrt. > > Bleibt in meinen Augen nur noch die fehlerhafte sendmail_path-Angabe > > als m�gliche Ursache. > > Wie gesagt ist die nicht fehlerhaft, aber auch auskommentiert oder nur > mit -C, ohne -i -t geht's nicht. > > Ich versteh's einfach nicht. In Deiner ersten Mail hast Du geschrieben, dass es von der Bash aus funktioniert. Wenn es aus der Bash funktioniert, aber von PHP aus nicht, dann treibt entweder PHP irgendwelchen Schmuh -- eher unwahrscheinlich, PHP und msmtp k�nnen nicht zusammen -- da es howTo's gibt auch unwahrscheinlich, oder PHP greift anders auf msmtp zu als Du von der Bash aus. Hast Du von der Bash aus su(do) verwendet? Was gibt eigentlich: <?php echo shell_exec(...msmtp-Befehl der von Deiner Bash aus funktioniert...); ?> aus?
php::bar PHP Wiki - Listenarchive