Я всю ночь искал это в интернете, пытаясь найти решение об этом. Я установил wamp-сервер в Windows 8.1, и я пытаюсь отправить некоторые письма с помощью sendmail (http://glob.com.au/sendmail/) и моей учетной записи gmail
Когда я настраиваю sendmail для использования порта nº 465, я всегда получаю эту ошибку: Ошибка сокета # 10060Соединение отключено
Если я пытаюсь использовать порт № 587, я получаю эту строку в журнале ошибок: соединение закрыто. Изящно. Но письмо не отправляется.
Это мой файл sendmail.ini
[sendmail]
smtp_server=smtp.gmail.com
;I tried both: 587, 465
smtp_port=587
; I tried: "blank, auto ssl, tls, none"
smtp_ssl=
error_logfile=error.log
debug_logfile=debug.log
[email protected]
auth_password=mypass
hostname=localhost
И это файл php.ini
[mail function]
smtp_port = 465
sendmail_path="C:\wamp\sendmail\sendmail.exe -t"
mail.add_x_header = On
ssl_module активен в apache, а php использует php_open_ssl и расширение php_socket.
Также я пытался использовать stunnel без каких-либо успехов
РЕДАКТИРОВАТЬ 27/01/2014
Я установил smtp_port = 465 и smtp_ssl = ssl на sendmail.ini. Кроме того, я установил, что sendmail.exe должен запускаться как Windows XP SP3. После этого, когда я запускаю sendmail.exe на консоли Windows, он отправляет письмо правильно. Однако, когда wamp пытается отправить почту, я получаю эту ошибку в журналах ошибок sendmail.: Ошибка сокета # 10060Соединение отключено.
Это код, который я использую для проверки sendmail:
<?php
$email = "[email protected]";
$to = "[email protected]";
$subject = "Hi!";
$body = "Hi,How are you?";
$headers = 'From: ' .$email . "\r\n".'Reply-To: ' . $email. "\r\n".'X-Mailer: PHP/' . phpversion();
if (mail($to, $subject, $body, $headers)) echo("<p>Email successfully sent</p>");
else echo("<p>Email delivery failed</p>");
?>