J'utilise cette m�thode pour une gestion mutualis�e.
Le Return-Path: ne peut pas �tre r�crit directement avec une r�gle donc je
biaise. Le Return-Path: d�finie dans php n'est jamais repris (???). Je n'ai
pas aussi trouv� comment reprendre le From: directement.
Rewrite Flags:
E rewrite all envelope fields
F rewrite the envelope From field
T rewrite the envelope To field
b rewrite the Bcc: header
c rewrite the Cc: header
f rewrite the From: header
h rewrite all headers
r rewrite the Reply-To: header
s rewrite the Sender: header
t rewrite the To: header
- donc mettre cette r�gle dans le bloc de REWRITE de exim.conf :
[EMAIL PROTECTED] $reply_address Ffr
Par s�curit�, je pense qu'il est mieux de remplacer le * par le nom de la
machine. Ne jamais faire un rewrite du sender (s), sinon tout utilisateur de
php pourra se faire passer pour n'importe qui.
- quand on programme du php ou tout ce qui tourne sous www-data, il est
possible de construire le header de mail en d�finissant le Reply-To: et le
X-Sender: pour plus de finesse. Le Return-Path: quand a lui est pris sur le
From: ou le Reply-To: si il est d�fini.
<?php
/* recipients */
$recipient .= "Stephane Leclerc <[EMAIL PROTECTED]>" . ", " ;
$recipient .= "[EMAIL PROTECTED]";
/* subject */
$subject = "Test";
/* message */
$message = "Ceci est un message de test\n";
/* additional header pieces for errors, From cc's, bcc's, etc */
$headers .= "From: sleclerc <[EMAIL PROTECTED]>\n";
$headers .= "X-Sender: <[EMAIL PROTECTED]>\n";
$headers .= "X-Mailer: PHP\n"; // mailer
$headers .= "X-Priority: 1\n"; // Urgent message!
$headers .= "Reply-to: <[EMAIL PROTECTED]>\n";
$headers .= "Return-Path: <[EMAIL PROTECTED]>\n";
$headers .= "cc:[EMAIL PROTECTED]"; // CC to
$headers .= "bcc:[EMAIL PROTECTED], [EMAIL PROTECTED]"; // BCCs to
/* and now mail it */
mail($recipient, $subject, $message, $headers);
?>
Si tu regardes dans les logs exim, tu verras que le mail par bien avec le
bon header.
2001-09-22 10:29:00 15ki9k-0002He-00 <= [EMAIL PROTECTED] U=www-data P=local
2001-09-22 10:29:37 15ki9k-0002He-00 => [EMAIL PROTECTED] R=smarthost
2001-09-22 10:29:37 15ki9k-0002He-00 -> [EMAIL PROTECTED] R=smarthost
2001-09-22 10:29:37 15ki9k-0002He-00 -> [EMAIL PROTECTED] R=smarthost
2001-09-22 10:29:37 15ki9k-0002He-00 Completed
Et on obtient ceci si il y a un retour :
--------------------------
This message was created automatically by mail delivery software (Exim).
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:
[EMAIL PROTECTED]
SMTP error from remote mailer after RCPT TO:<[EMAIL PROTECTED]>:
host mail.isdnet.net [194.149.160.8]: 550 <[EMAIL PROTECTED]>... User
unknown
------ This is a copy of the message, including all the headers. ------
Return-path: <[EMAIL PROTECTED]>
Received: from adsl163-97.mangoosta.fr ([217.11.163.97] helo=actionweb.fr)
by actionweb.fr with asmtp (Exim 3.31 #1 (Debian))
id 15khrT-0001H2-00; Sat, 22 Sep 2001 10:10:07 +0200
Received: from www-data by actionweb.fr with local (Exim 3.32 #1 (Debian))
id 15ki9k-0002He-00; Sat, 22 Sep 2001 10:29:00 +0200
To: Stephane Leclerc <[EMAIL PROTECTED]>, [EMAIL PROTECTED]
Subject: Test
From: sleclerc <[EMAIL PROTECTED]>
X-Sender: <[EMAIL PROTECTED]>
X-Mailer: PHP
X-Priority: 1
Reply-to: <[EMAIL PROTECTED]>
cc:[EMAIL PROTECTED]
Message-Id: <[EMAIL PROTECTED]>
Sender: www-data <[EMAIL PROTECTED]>
Date: Sat, 22 Sep 2001 10:29:00 +0200
--------------------------
Et voil�.
Pour les process lanc�s en shell sous un UID, c'est la m�me histoire d�s
qu'il faut g�rer les retours (donc faire un uid@ $reply_address Ffr si non
rendre ind�pendant les retours du uid).
Si quelqu'un a quelque chose de plus simple et de plus efficace, je prend.
Stef...
> Je suis moi aussi en train de configurer l'envoi de mail via exim. Cela
> marche parfaitement, jusqu'� l'envoi de mail via apache/php (fonction
> mail()). En effet, 2 lignes me "g�nent" dans le header des mails envoy�s :
>
> Return-Path: <[EMAIL PROTECTED]>
> Sender: www-data <[EMAIL PROTECTED]>
>
> www-data n'est ici que le username du processus apache. Certes, mais mon
> fichier /etc/email-adresses contient pourtant :
>
> www-data: [EMAIL PROTECTED]
>
> Y-a-t-il un moyen d'alimenter ces champs d'une mani�re autre que de modifier
> le username du processus apache ?
..........................................................
. Linux - Debian - php4 - Apache - MySQL - Infogerance .
. email: [EMAIL PROTECTED] - http://www.actionweb.fr .
. Tel: (0)141 906 100 - Fax: (0)141 906 101 .
..........................................................