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

Установить отправителя почты по умолчанию в linux (PHP)

Всякий раз, когда я отправляю электронное письмо на php с mail() функция, когда я получаю его как пользователь, электронное письмо отображается как отправленное с "anonymous@MyServerName.local".

Теперь я хочу, чтобы это стандартно отправлялось с mail-bot@mydomain.com, без необходимости устанавливать заголовок «От:» в mail() функция, когда я его отправлю.

Я не знаю, как это изменить, поэтому было бы неплохо немного помочь.

Я запускаю CentOS 5.6 с несколько нормальной настройкой LAMP.

В man-страница postfix sendmail предлагает использовать NAME переменная окружения.

(Помимо: die.net страница руководства не упоминала об этом ...)

Лучшими вариантами в запрашиваемых вами обстоятельствах, вероятно, являются либо

  • Используйте sendmail_from в php.ini
  • или измените имя хоста (либо в / etc / hostname, либо в директиве имени хоста в вашей конфигурации postfix / sendmail)

Правильный способ установить почтовый ящик отправителя в заголовках сообщений (для чего-то другого, кроме фактической учетной записи Unix / Linux, под эгидой которой запускается сценарий) является поставив From: заголовок в mail() функция. От этого никуда не деться. Правильный способ установки почтового ящика отправителя в сообщении конверт либо использует переменные среды в некотором скрипте оболочки, на который указывает sendmail_path и обернут вокруг фактического sendmail команду, или используя UCB sendmail -f вариант.

Эндрю дал вам переменную среды Postfix, которую нужно установить в скрипте совместимости. Если вы используете qmail, вы действительно можете, согласно qmail-inject страница руководства, устанавливать обе заголовок и составители конвертов, с $QMAILUSER+$QMAILHOST+$QMAILNAME (или $MAILUSER+$MAILHOST+$MAILNAME или $USER+$MAILHOST+$NAME) и $QMAILSUSER+$QMAILSHOST наборы переменных среды соответственно.