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 support@example.com"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" <support@example.com>, mais je ne sais pas si c'est possible.

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.)


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 "support@example.com"
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 support@example.com

exécuter postmap /etc/postfix/genericpour compiler et recharger postfix. Votre nom d'envoi est maintenant support@example.com


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


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}


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
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.