Сведения о вопросе

Kirushaa

02:20, 15th August, 2020

Теги

Virtualmin настройка дефолтного ящика для mail() в php?

Просмотров: 345   Ответов: 2

На сервере стоит LAMP и Virtualmin. Как настроить ящик с которого будет отправляться почта функцией mail() в php на виртуальном сервере. Если есть такое в Virtualmin, то желательно как это сделать с помощью него, если нет то подскажите в сторону каких конфигов или направлений копать.



  Сведения об ответе

VCe znayu

07:16, 16th August, 2020

Боюсь, связи между «ящиком» для mail() и Virtualmin-ом нет вообще никакой. Когда вызывается mail(), php достаточно тупо вызывает /usr/sbin/sendmail и передает ему заголовки и сообщение. Максимум что знает sendmail — это UID процесса его вызвавшего (поэтому адрес получается @).

Другое дело, что посредством заголовков можно указать обратный адрес и поле From: исходящего письма и это делается очень просто приблизительно таким вызовом mail():

mail('Кому <aaa@example.com>', 'Тема', 'Сообщение', "From: От кого <bbb@example.com>\nReply-To: Кому ответить <ccc@example.com>");


Или можно еще указать дополнительные параметры для sendmail посредством пятого параметра mail():

mail('nobody@example.com', 'the subject', 'the message', null, '-fwebmaster@example.com');


но это не такое гибкое решение на мой вкус.

В гугле встречаются советы поменять параметр sendmail_from в php.ini, но они ошибочны — этот параметр работает только в винде.


  Сведения об ответе

crush

13:06, 12th August, 2020

Как написал dmiceman, при отправки почты скриптом - нет отправителя, но можно указать поле FROM.
Для этого в файле php.ini укажите:
sendmail_path = "/usr/sbin/sendmail -t -i -f mail@domain.tld"
Заменив mail@domain.tld нужным адресом.


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться