Подтвердить что ты не робот

Как изменить адрес с помощью gmail smtp-сервера

Я хочу отправить письмо от А до Б, с заголовком и контентом через Gmail.

Как это сделать с помощью PHP?

Я указал FROM ([email protected]), но когда я получаю электронное письмо, оно все равно отправляется из моей учетной записи gmail ([email protected]).

screenshot of from address
(источник: maishudi.com)

$mail->From = "[email protected]";
$mail->FromName = "Mailer";
$mail->AddAddress("[email protected]", "Josh Adams");// name is optional
$mail->AddReplyTo("[email protected]", "Information");

Как я могу изменить часть FROM?

4b9b3361

Ответ 1

Короткий ответ - вы не можете.

Google перезаписывает заголовки From и Reply-To в сообщениях, отправляемых через службу SMTP, в значения, относящиеся к вашей учетной записи gmail.

Функция SMTP в gmail не предназначена для службы open или relay. Если это допустило любые значения для заголовка From, это значительно снизило бы репутацию Google со спам-услугами, поскольку не было бы возможности проверить учетные данные отправителя.

Вам нужно рассмотреть альтернативы. Как вы планируете разместить свой script/приложение/веб-сайт по завершении: практически все хостинг-решения (shared/vps/выделенный сервер) будут предварительно настроены с помощью решения электронной почты: будь то sendmail или postfix на * nix, или IIS в Windows.

Если вы намерены использовать gmail, вы можете:

====

Изменить июнь 2015

Было высказано предположение, что GMail разрешает отправлять по различным адресам. Насколько я могу судить, это для отправки через приложение GMail wep и использует существующий внешний SMTP-сервер, который не имеет отношения к исходному вопросу.

====

Изменить ноябрь 2013

Видя, как это все еще получает тонкий поток голосов. Быстрое обновление.

Google отозвал свой бесплатный GMail для доменов. Есть множество других бесплатных услуг. Одним из примечаний является Mandrill - индивидуальная почтовая служба, предназначенная для транзакционных электронных писем (например, заказы электронной торговли и т.д.). Он управлялся MailChimp, который в значительной степени знает все, что нужно знать о отправке электронной почты на томе. Они также дают вам бесплатно 12k/month, что довольно приятно.

Ответ 2

Этот вопрос и правильный ответ могут быть релевантными:

Если вы используете Gmail для SMTP, можете ли вы установить другой параметр" from " адрес?

Gmail требует от вас подтверждения от адресов до отправки почты в качестве этого адреса электронной почты. Поэтому вам нужно добавить нового отправителя в свою личную учетную запись gmail и проверить его.

Это позволит вам пройти аутентификацию с помощью [email protected] и отправить электронное письмо с адреса электронной почты [email protected]

Ответ 3

В отличие от всех остальных, я сделаю предположение, что по буквам вы имеете в виду электронные письма...

Но я не уверен, что вы получаете, когда упоминаете, что он должен включать "Заголовки и содержимое". Вы хотите пересылать электронные письма? Вы хотите, чтобы сообщения электронной почты от A отображались так, как будто они поступали из учетной записи gmail B в заголовках? Вы строите какой-то клиент gmail?

Самый простой способ отправить электронное письмо с помощью PHP - это mail. Этот пример приведен прямо из их документации:

$to      = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]' . "\r\n" .
    'Reply-To: [email protected]' . "\r\n" .
    'X-Mailer: PHP/' . phpversion();

mail($to, $subject, $message, $headers);

Если вы хотите, чтобы заголовки отображались с помощью A gmail, а не просто для изменения части/ответа на часть, вам нужно будет использовать gmail в качестве SMTP-сервера. Я не знаю, можете ли вы установить это на уровне script.

Ответ 4

Вам нужно перейти в настройки GMAIL и добавить новый псевдоним.

Вам будет запрошена информация SMTP, которая в принципе бесполезна, так как вы используете SMTP для отправки электронной почты, НО загвоздка в том, что если ваш псевдоним находится в домене Google Suite, он будет добавлен только с простым подтверждением по электронной почте!

Когда у вас есть псевдоним, вы можете изменить заголовок "От" в своем электронном письме SMTP.


ПРИМЕЧАНИЕ. Вы не можете изменить адрес "От" на [email protected], именно так работает Gmail и является причиной его доверия.

Ответ 5

Если причина, по которой вы хотите использовать gmail, заключается в том, что вы не хотите настраивать MTA (причина, о которой вы указали в комментарии к этому), у вас есть 2 варианта:

  • Если веб-сервер находится на вашем дом/место работы; использовать ваш интернет-провайдер smtp-сервер
  • Если веб-сервер находится на хостинга, спросите их, что smtp-сервер для использования.

Ответ 6

Ответ выше не совсем правильный.

Вы определенно можете указать любого отправителя, если у вас есть другой адрес электронной почты.

Как объясняет страница справки:

  1. На вашем компьютере откройте Gmail.
  2. В правом верхнем углу нажмите Настройки.
  3. Нажмите вкладку Аккаунты и импорт или Аккаунты.
  4. В разделе " Отправить письмо как " нажмите Добавить другой адрес электронной почты.
  5. Введите свое имя и адрес, с которого вы хотите отправить.
  6. Нажмите Next Step, а затем отправьте подтверждение.
  7. Для школьных или рабочих учетных записей введите SMTP-сервер (например, smtp.gmail.com или smtp.yourschool.edu), а также имя пользователя и пароль для этой учетной записи.
  8. Нажмите Добавить аккаунт.

После успешного добавления этого письма вы можете отправить электронное письмо от имени нового адреса электронной почты в Gmail.

Google не будет перезаписывать вашу электронную почту таким образом, пока вы отправляете электронную почту через Google SMTP.