Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Невозможно отправить почту с помощью PHP (phpmailer) через Office365 в Hostgator. Как это исправить?

Автор вопроса: Robert KuzmaОтветов: 3

Я хочу иметь возможность отправлять почту в Hostgator через office365. Я смог сделать это с Gmail, но не могу настроить его для работы с office365.

Он работает на моих двух других серверах. Единственная проблема - Hostgator.

Должен ли я что-то исправить или Hostgator должен предпринять какие-то действия?

<?php
require_once('class.phpmailer.php');
$mail = new PHPMailer(true);


$mail->IsSMTP();

$mail->SMTPDebug = 2;
$mail->SMTPAuth = true;
$mail->SMTPSecure = "tls";
$mail->Host = "pod51014.outlook.com";
$mail->Port = 587;
$mail->Username = "usernamehere";
$mail->Password = "************";

/* ... addaddres, reply, subject, message -> the usual stuff you need ... */

$mail->Send();

?>

Я просто продолжаю получать следующий ответ:

SMTP -> ERROR: Failed to connect to server: Connection refused (111)

Я был с ними в чате поддержки, и порт 587 должен быть открыт.

  • Я думаю, вам действительно нужно поговорить с их поддержкой снова. Kev 07.05.2012

phpoffice365smtpphpmailer

Ответы

Ответ 1 · user3746881

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

Ответ 2 · Jan Hajek

Если ваш хостинг-провайдер не разрешает исходящую почту SMTP, я предлагаю вам взглянуть на Microsoft Graph - REST API, который позволяет отправлять электронные письма и делать многое другое. Вы можете использовать, например, библиотеку oauth2-azure, чтобы очень легко взаимодействовать с ней из кода PHP.

Ответ 3 · Nick Constantine

Попробуйте эти вещи. Может быть, что-то получится.

Установите хост на:

$mail->Host = 'smtp.office365.com';

Не устанавливайте порт вообще:

//$mail->Port = 587;

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы