Я недавно отправил проблему, настраивающую почтовый сервер с постфиксом и виртуальными псевдонимами. Я решил проблему здесь:
Постфикс/Голубятня - Несколько Доменов и Несколько Учетных записей Linux
Для подведения его я установил myorigin
к localhost, среди некоторых других настроек. Отправка и получение почты через SMTP работают отлично! Однако при отправке почты от /usr/sbin/sendmail
, то есть, PHP's 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. Я хочу еще сохранить электронную почту постфикса везде.
Действительно ли это возможно?
Спасибо.
Ладно, может быть, я немного поторопился с этим вопросом. Оказывается, это отлично работает:
/usr/sbin/sendmail -i -t -f postmaster@example.org
Итак, реальное решение - использовать флаг
mail.force_extra_parameters
, и установить его на -fpostmaster@example.org
Просто убедитесь, что вы не тестируете, используя клип php.ini, ожидая, что php.ini apache заработает. Чёрт возьми.