Назад | Перейти на главную страницу

Заставить почту PHP избегать использования postfix root @ myorigin; вместо этого использовать / etc / mailname?

Недавно я опубликовал проблему с настройкой почтового сервера с постфиксными и виртуальными псевдонимами. Я решил проблему здесь:

Postfix / Dovecot - несколько доменов и несколько учетных записей Linux

Подводя итог, я установил myorigin на localhost, среди некоторых других настроек. Отправка и получение почты через SMTP отлично работает! Однако при отправке почты из /usr/sbin/sendmail, то есть PHP mail() команда, она игнорирует From: заголовок каким-то образом, и вместо этого захватив myorigin стоимость.

Вот важные заголовки:

From: Me <user@example.org>
Return-path: <root@localhost>
Received: from example.org (example.org [104.xxx.xxx.xxx]) by mx.google.com with ESMTPS...
Received-SPF: neutral (google.com: 104.xxx.xxx.xxx is neither permitted nor denied by best guess record for domain of root@localhost) client-ip=104.xxx.xxx.xxx;

Когда я меняю myorigin к example.org все хорошо отправляется с PHP, но полностью лишает меня возможности получать и отправлять почту любым другим способом. Так что это не совсем решение.

Итак, что я хотел бы сделать, это сказать /usr/sbin/sendmail не использовать myorigin, но вместо того, чтобы /etc/mailname ТОЛЬКО ДЛЯ PHP. Я хочу сохранить почту postfix везде.

Это возможно?

Спасибо.

Ладно, возможно, я немного поспешил с этим вопросом. Оказывается, это отлично работает:

/usr/sbin/sendmail -i -t -f postmaster@example.org

Итак, настоящее решение состоит в том, чтобы использовать

mail.force_extra_parameters флаг и установите его на -fpostmaster@example.org

Просто убедитесь, что вы не тестируете с помощью cli php.ini, ожидая, что apache php.ini будет работать. Шиш.