Changer l'adresse par défaut de Postfix de www-data à autre chose

13

Configuration de Postfix et Apache / PHP sur un serveur Ubuntu. Le courrier va maintenant bien avec le nom de domaine correct, mais le nom d'affichage de la partie locale est toujours "www-data" car je suppose que Postfix utilise le nom de l'utilisateur par défaut.

Dans le fichier php.ini, j'ai pu changer le sendmail_pathen sendmail_path = "/usr/sbin/sendmail -t -i -f [email protected]"mais le nom d'affichage de l'e-mail apparaît toujours sous la forme www-data. J'ai essayé de spécifier le nom d'affichage de différentes manières, mais cela a été ignoré et le courrier est toujours sorti en tant que www-data.

Ce que j'aimerais pouvoir faire, c'est par défaut, avoir des en-têtes avec des en-têtes manquants, de retour-chemin, etc. "Example Support" <[email protected]>, mais je ne sais pas si c'est possible.

WuckaChucka
la source

Réponses:

6

Si je comprends bien la question, vous essayez de définir le nom complet de l'expéditeur, pas l'adresse (ou, en plus de l'adresse). En général, Postfix ne se soucie pas de ce que c'est, et vous le définissez lorsque votre MUA (dans ce cas, un script php) génère les en-têtes de message. Je ne suis pas familier avec le codage en php, mais il semble que cela soit expliqué dans la documentation de la fonction PHP mail () .

Mais si vous appelez le sendmailbinaire de postfix pour envoyer le message, vous pouvez utiliser -F "Support System"pour faire ce que vous voulez. Peut-être que cela devra être dans le mail.force_extra_parameterscadre - je ne suis pas aussi clair sur le fonctionnement de php ici. (Surtout, ce n'est pas la bonne chose à faire de toute façon.)

mattdm
la source
1
Cela fonctionne bien, merci. J'ai généralement défini les en-têtes correctement lors de l'envoi via PHP mail (), etc., mais je voulais définir quelque chose comme valeur par défaut au cas où les en-têtes étaient incorrects, etc.
WuckaChucka
1
Notez que vous pouvez utiliser les options -f et -F pour définir le nom d'affichage et l'adresse. Par exemple: -F "Support System" -f "[email protected]"
Liam
12

Ajoutez votre main.cf

smtp_generic_maps = hash:/etc/postfix/generic

Et créez un fichier nommé / etc / postfix / generic avec:

www-data [email protected]

exécuter postmap /etc/postfix/genericpour compiler et recharger postfix. Votre nom d'envoi est maintenant [email protected]

Dom
la source
4
Cela n'a eu aucun effet.
WuckaChucka
rechargez-vous postfix? Peut-être redémarrer. Avez-vous des erreurs dans vos journaux?
Dom
Cela fonctionne-t-il également pour définir le chemin de retour lorsque le MUA est PHPmailer et PHPmailer utilise mail()?
Gaia
@Dom, le chemin de retour a changé comme prévu et j'ai obtenu tous les passes SPF, DKIM et DMARC mais je finis toujours dans Junk Box! Veuillez aider.
webmastx
La détection du spam dépend de centaines de facteurs. Votre courrier peut aussi ne pas être valide (et pas seulement l'expéditeur)
Dom
5

Vous devez faire une dernière chose pour terminer le processus qui est @Dom a oublié. Exécutez la commande suivante:

$ postmap /etc/postfix/generic

Cette commande créera un generic.dbfichier dans le répertoire / postfix.

Si vous ne le faites pas, vous pouvez faire face à la sortie d'erreur suivante:

fatal: open database /etc/postfix/generic.db: No such file or directory

Oğuz Çelikdemir
la source
Cela fonctionne-t-il également pour définir le chemin de retour lorsque le MUA est PHPmailer et PHPmailer utilise mail()?
Gaia
-1

essaye ça

/ etc / apache2 / envvars

Utilisateur $ {APACHE_RUN_USER} Groupe $ {APACHE_RUN_GROUP}

Journal informatique
la source
Comment est-ce censé régler quoi que ce soit?
womble
oh désolé cette partie manquait .. dans le fichier envars recherchez cette exportation APACHE_RUN_USER = exportation www-data APACHE_RUN_GROUP = www-data et changez-la en cette exportation APACHE_RUN_USER = export info info APACHE_RUN_GROUP = www-data
IT-Log