Вот мой код:
<?php mail('myemail@gmail.com','Test','Test'); ?>
При отправке на адрес, не принадлежащий компании, я получаю следующую ошибку:
Warning: mail(): SMTP server response: 550 5.7.1 Unable to relay in C:\inetpub\wwwroot\internal_tools\include\mail.php on line 2
При переключении адреса электронной почты на мой рабочий адрес он работает нормально. Мой PHP.ini тоже выглядит отлично:
[mail function] ; For Win32 only. ; http://php.net/smtp ;SMTP = localhost SMTP = PCMAIL1.mycompany.com ; http://php.net/smtp-port smtp_port = 25 ; For Win32 only. ; http://php.net/sendmail-from sendmail_from = no-reply@mycompany.com
Даже создайте сайт в IIS7:
Есть идеи?
Чтобы предотвратить злоупотребление для отправки спама , многие почтовые серверы требуют, чтобы клиент был аутентифицирован как законный пользователь перед ретрансляцией почты (пересылка его на почтовый сервер получателя). Вы указали учетные данные в IIS; однако PHP не использует их.
Вот ваши варианты:
mail()
используйте одну из существующих почтовых библиотек PHP, которая поддерживает аутентификацию SMTP (PEAR Mail, phpmailer, Swift Mailer и т . Д. ). sendmail_path
соответственно. Вам необходимо проверить политику поставщика Smtp. Или вам нужно проверить конфигурацию сервера Smtp (если этот сервер отправляет электронные письма напрямую)