Journal PHP, Exim et fonction mail()

Posté par  (site web personnel) .
Étiquettes :
0
11
fév.
2004
Bonjour,

J'ai un problème avec l'envoi de mails depuis PHP, sur un serveur Debian Woody utilisant exim4.3.

Lorsque j'essaie d'envoyer un mail en root par la commande
# exim4 -v nom@wanadoo.fr
test
.

Ca marche très bien.

Mais depuis PHP, le user www-data reçoit en réponse:

From MAILER-DAEMON Tue Feb 10 15:53:13 2004
Return-path: <>
Envelope-to: www-data@nommachine
Delivery-date: Tue, 10 Feb 2004 15:53:13 +0100
Received: from Debian-exim by nommachine with local (Exim 4.30)
id 1AqZGD-0000lK-Kx
for www-data@nommachine; Tue, 10 Feb 2004 15:53:13 +0100
X-Failed-Recipients: nom@wanadoo.fr
Auto-Submitted: auto-generated
From: Mail Delivery System <Mailer-Daemon@nommachine>
To: www-data@nommachine
Subject: Mail delivery failed: returning message to sender
Message-Id: <E1AqZGD-0000lK-Kx@nommachine>
Date: Tue, 10 Feb 2004 15:53:13 +0100

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

nom@wanadoo.fr
SMTP error from remote mailer after RCPT TO:<nom@wanadoo.fr>:
host smtp.wanadoo.fr [193.252.22.78]: 504 <www-data@nommachine>:
Sender address rejected: need fully-qualified address

------ This is a copy of the message, including all the headers. ------

Return-path: <www-data@nommachine>
Received: from www-data by nommachine with local (Exim 4.30)
id 1AqZGA-0000lH-V2
for nom@wanadoo.fr; Tue, 10 Feb 2004 15:53:10 +0100
To: <nom@wanadoo.fr>
Subject: =?iso-8859-1?q?Nouveau=20mot=20de=20passe <support@hebergeur.com>
Reply-To: Support <support@hebergeur.com>
Message-Id: <E1AqZGA-0000lH-V2@nommachine>
Sender: www-data <www-data@nommachine>
Date: Tue, 10 Feb 2004 15:53:10 +0100



Je me doute bien de la source du problème en voyant ce message, c'est l'adresse Return-path qui n'est pas valide. Mais la question c'est: Ou est ce que je dois la spécifier dans exim ?
Dans le fichier /etc/exim4/conf.d/main/02_exim4-config_options j'ai ceci:
trusted_users = www-data

Et dans /etc/exim4/conf.d/main/01_exim4-config_listmacrosdefs j'ai:
qualify_domain = nommachine.com

Je ne vois donc pas ce qui peut générer cet Return-path...

Si quelqu'un a une idée, ça me rendrait un immense service...
  • # Re: PHP, Exim et fonction mail()

    Posté par  . Évalué à 2.

    Jettes un oeil à l'aide de la fonction mail de php:

    http://www.nexen.net/docs/php/annotee/function.mail.php(...)

    Tu peut définir tes propres headers dont celui qui te pose problème.
    Je ne suis pas très très calé en PHP, mais cela ne semble pas venir de la conf d'Exim mais bien de celle de PHP.
    Je te conseille de parcourir le site et le forum de nexen.net à la recherche de ta réponse et de poster si tu ne la trouves pas.
    L'équipe est très compétente.

    Dernière petite chose:
    host smtp.wanadoo.fr [193.252.22.78]: 504 <www-data@nommachine>:
    Sender address rejected: need fully-qualified address

    Le from de ton mail semble être mauvais ... tu dois par contre pouvoir définir au niveau d'Exim ta "provenance" ( $myorigin avec postfix ).
    • [^] # Re: PHP, Exim et fonction mail()

      Posté par  (site web personnel) . Évalué à 1.

      Merci.
      Effectivement c'était non pas dans Exim que ca bloquait, mais dans PHP.

      Extrait du php.ini qui maintenant marche:
      ; For Unix only. You may supply arguments as well (default: "sendmail -t -i").
      sendmail_path = /usr/sbin/sendmail -t -i

      Les arguements par défaut (-t et -i) étaient absents de la configuration par défaut... un comble pour des arguements par défaut :)

      En tout cas maintenant ca marche, je me sens léger ;)

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.