Надеюсь, этот день вас хорошо поймет.Невозможно получить PhpMailer, работающий с Office 365
Я работаю над существующим PHP-сайтом (следует отметить, что я далек от эксперта PHP), у которого есть веб-форма, которая в настоящее время не работает. Эта форма просто берет вход пользователя, превращает его в электронное письмо и отправляет его по электронной почте в учетную запись пользователя. Он прекратил работать, когда переключился на Office 365 в качестве своего поставщика электронной почты. Форма использует библиотеку PhpMailer для обработки отправки, поэтому я изменил ее, чтобы использовать настройки Office 365 here. Когда он посылает я получаю следующее сообщение об ошибке:
2017-02-01 21:50:17 Connection: opening to smtp.office365.com:2525,
timeout=10, options=array () 2017-02-01 21:50:28 Connection: Failed to
connect to server. Error number 2. "Error notice: stream_socket_client()
[function.stream-socket-client]: unable to connect to smtp.office365.com:587
(Connection timed out) 2017-02-01 21:50:28 SMTP ERROR: Failed to connect to
server: Connection timed out (110)
Message delivery failed...RFI1
Это выход непосредственно на веб-страницу, так как на пути это установка. Вот настройки PHPMailer я помещал в:
$mail = new PHPMailer(true);
$mail-> IsSMTP();
$mail->Host = "smtp.office365.com";
$mail->SMTPAuth = true;
$mail->Username = 'username';
$mail->Password = 'pass';
$mail->SMTPSecure = 'ssl';
$mail->Port = 587;
$mail->SMTPDebug = 2;
$mail->From = $from;
$mail->Mailer = "smtp";
$mail->FromName = 'Generic message';
Я посмотрел по всей сети, чтобы посмотреть, что я могу делать неправильно здесь. ISP-хостинг сайта говорит, что они ничего не блокируют, и Microsoft говорит, что я не настроил SSL правильно. Теперь предоставлено, я не эксперт в этой системе, у меня нет прямого доступа к серверу, и сам сайт необычно построен, и я не могу заставить его нормально работать на локальном сервере. Тем не менее, мне трудно думать, что таймаут соединения может быть вызван проблемой SSL. Есть ли у кого-нибудь идеи о том, что еще может вызвать эту проблему?
Редактировать: Как указывалось, порт в сообщении об ошибке не соответствует тому, что было в коде. Я пробовал несколько портов на основе того, что я читал, и каждый раз хватал текст из каждого раза.
порт странным не кажется, 2525 есть, чтобы использовать порт, который вы установите – nogad
Да, это был мой плохой. Я вырезал и вставил код с более раннего времени, а затем попробовал его с другим номером порта, чтобы быть уверенным, и схватил ошибку от этого прогона. –
с вашего сервера запустите 'telnet smtp.office365.com 587', видите ли вы соединение – nogad