Измените значение по умолчанию с адреса из Postfix с www-data на другое

Настройка Postfix и Apache/PHP на сервере Ubuntu. Почта теперь работает нормально с правильным доменным именем, но отображаемое имя локальной части всегда "www-data", так как я предполагаю, что Postfix по умолчанию использует имя пользователя.

В файле php.ini я смог изменить sendmail_path в sendmail_path = "/usr/sbin/sendmail -t -i -f support@example.com" но отображаемое имя электронной почты по-прежнему отображается в виде www-данных. Я попытался указать отображаемое имя несколькими различными способами, но это было проигнорировано, и почта все еще отправлялась в виде www-данных.

То, что я хотел бы сделать, это по умолчанию, иметь любую почту с отсутствующим из, return-path и т. Д. Заголовки выходят как "Example Support" <support@example.com>, но я не уверен, что это возможно.

4 ответа

Решение

Как я понимаю вопрос, вы пытаетесь установить полное имя отправителя, а не адрес (или, в дополнение к адресу). В общем, Postfix не волнует, что это такое, и вы устанавливаете его, когда ваш MUA (в данном случае какой-то php-скрипт) генерирует заголовки сообщений. Я не знаком с кодированием в php, но похоже, что это объясняется в документации по функции PHP mail().

Но если вы звоните в постфикс sendmail двоичный файл для отправки сообщения, вы можете использовать -F "Support System" делать то, что вы хотите. Может быть, это должно быть в mail.force_extra_parameters настройка - мне не очень понятно, как здесь работает php. (Главным образом, это в любом случае неправильно)

Добавьте в свой main.cf

smtp_generic_maps = hash:/etc/postfix/generic

И создайте файл с именем /etc/postfix/generic с помощью:

www-data support@example.com

бежать postmap /etc/postfix/generic скомпилировать и перезагрузить постфикс. Ваше имя для отправки теперь support@example.com

Чтобы завершить процесс, вам нужно сделать еще одну вещь, о которой @Dom забыл. Запустите следующую команду:

$ postmap /etc/postfix/generic

Эта команда будет создавать generic.db файл в каталоге /postfix.

Если вы этого не сделаете, вы можете столкнуться со следующей ошибкой:

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

Попробуй это

/ И т.д. /apache2/envvars

Пользователь ${APACHE_RUN_USER} Группа ${APACHE_RUN_GROUP}

Другие вопросы по тегам