Cambia l'impostazione predefinita dall'indirizzo di Postfix da www-data a qualcos'altro


13

Configurare Postfix e Apache / PHP su un server Ubuntu. La posta ora sta andando bene con il nome di dominio corretto, ma il nome visualizzato della parte locale è sempre "www-data", dato che suppongo che Postfix utilizzi il nome dell'utente per impostazione predefinita.

Nel file php.ini, sono stato in grado di cambiare sendmail_pathin sendmail_path = "/usr/sbin/sendmail -t -i -f support@example.com"ma il nome visualizzato dell'e-mail appare ancora come www-data. Ho provato a specificare il nome visualizzato in diversi modi, ma è stato ignorato e la posta continuava a essere trasmessa come www-data.

Quello che mi piacerebbe essere in grado di fare è di default, avere messaggi di posta mancanti, intestazioni di ritorno, ecc., Come "Example Support" <support@example.com>, ma non sono sicuro che sia possibile.

Risposte:


6

Quando capisco la domanda, stai cercando di impostare il nome completo del mittente, non l'indirizzo (o, oltre all'indirizzo). In generale, a Postfix non importa cosa sia, e lo imposti quando il tuo MUA (in questo caso, alcuni script php) genera le intestazioni dei messaggi. Non ho familiarità con la codifica in php, ma sembra che questo sia spiegato nella documentazione per la funzione mail () di PHP .

Ma se stai chiamando il file sendmailbinario di postfix per inviare il messaggio, puoi usare -F "Support System"per fare quello che vuoi. Forse questo dovrebbe essere nell'ambientazione mail.force_extra_parameters- non sono così chiaro su come funziona php qui. (Principalmente, questa è la cosa sbagliata da fare comunque.)


1
Funziona bene, grazie. Di solito imposto correttamente le intestazioni quando invio tramite posta PHP (), ecc. Ma volevo impostare qualcosa come predefinito nel caso in cui le intestazioni fossero errate, ecc.
WuckaChucka,

1
Nota che puoi usare ENTRAMBE le opzioni -f e -F per impostare il nome e l'indirizzo visualizzati. Ad esempio: -F "Sistema di supporto" -f "support@example.com"
Liam

12

Aggiungi il tuo main.cf

smtp_generic_maps = hash:/etc/postfix/generic

E crea un file chiamato / etc / postfix / generic con:

www-data support@example.com

eseguire postmap /etc/postfix/genericper compilare e ricaricare postfix. Il tuo nome di invio ora è support@example.com


4
Questo non ha avuto effetto.
WuckaChucka,

ricarichi postfix? Forse riavviare. Hai errori nei tuoi registri?
Dom

Funziona anche per impostare il percorso di ritorno quando MUA è PHPmailer e PHPmailer sta usando mail()?
Gaia,

@Dom, il percorso di ritorno è cambiato come previsto e ho ottenuto tutti i passaggi SPF, DKIM e DMARC ma finendo comunque in Junk Box! Per favore aiuto.
webmastx

Il rilevamento dello spam dipende da centinaia di fattori. Anche la tua posta potrebbe non essere valida (e non solo il mittente)
Dom

5

Dovresti fare un'ultima cosa per completare il processo che @Dom ha dimenticato. Esegui il seguente comando:

$ postmap /etc/postfix/generic

Questo comando creerà il generic.dbfile nella directory / postfix.

In caso contrario, è possibile riscontrare il seguente output di errore:

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


Funziona anche per impostare il percorso di ritorno quando MUA è PHPmailer e PHPmailer sta usando mail()?
Gaia,

-1

prova questo

/ Etc / apache2 / envvars

Utente $ {APACHE_RUN_USER} Gruppo $ {APACHE_RUN_GROUP}


Come dovrebbe risolvere qualcosa?
Womble

scusate, questa parte mancava .. nel file envars cercate questa esportazione APACHE_RUN_USER = www-data export APACHE_RUN_GROUP = www-data e cambiatelo in questa esportazione APACHE_RUN_USER = info export APACHE_RUN_GROUP = www-data
IT-Log
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.