Я успешно установил веб-приложение с помощью WAMPSERVER на рабочем столе, используемом несколькими людьми изнутри, это использовало PHPMailer для внутреннего SMTP-сервера без шифрования или аутентификации, и это сработало.PHPMailer Hangs on Send
Этот рабочий стол разбился, и я перешел на «новый» рабочий стол. У меня была настройка SVN, поэтому я даже использовал большинство файлов и конфигурацию. Одно из отличий, которое может иметь значение, - это то, что старый рабочий стол был 64-битным, а новый - 32-битным. Это означает, что я использую разные версии WAMPSERVER.
Почтовый адрес просто висит. Я не получаю ошибку PHP или тайм-аут PHP. Я просто не дохожу до конца моего сценария. Сумасшедшая часть об этом заключается в том, что она работает с аутентификацией, ssl и gmail. Он просто не будет работать с лишним простым случаем, в котором я нуждаюсь.
Это работает:
<?php
require('class.phpmailer.php');
$mail=new PHPMailer();
$mail->ISSMTP();
$mail->Host='smtp.gmail.com';
$mail->Subject='test subj';
$mail->Body='the body email test';
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
$mail->SMTPAuth = true; // enable SMTP authentication
$mail->SMTPSecure = "ssl"; // sets the prefix to the servier
$mail->Host = "smtp.gmail.com"; // sets GMAIL as the SMTP server
$mail->Port = 465; // set the SMTP port for the GMAIL server
$mail->Username = "[email protected]"; // GMAIL username
$mail->Password = "mypassword"; // GMAIL password
$mail->AddAddress('[email protected]', 'John Doe');
$mail->SetFrom('[email protected]', 'First Last');
$mail->Send();
?>
это раньше, но теперь не:
<?php
require('class.phpmailer.php');
$mail=new PHPMailer();
$mail->ISSMTP();
$mail->Host='smtp.internal.com';
$mail->Subject='test subj';
$mail->Body='the body email test';
$mail->SMTPDebug = 1; // enables SMTP debug information (for testing)
$mail->Port = 25; // set the SMTP port for the GMAIL server
$mail->AddAddress('[email protected]', 'John Doe');
$mail->SetFrom('[email protected]', 'First Last');
$mail->Send();
?>
Единственное, что я получаю от отладки является
КЛИЕНТ -> SMTP: EHLO thedesktophostname
Ошибок не отображается на странице и ничего в журнале apache, где я обычно получаю ошибки PHP, если они не отображаются.
Я могу установить telnet на хост с рабочего стола на порт 25 и даже ввести команду EHLO и получить хороший ответ от сервера.
Я не помню эту проблему раньше, хотя, возможно, я ее уже решил. Я не мог найти ничего, что помогло бы здесь или в Google.
Пожалуйста, помогите. Благодарю.
Можете ли вы прочитать журналы SMTP-сервера? – Wrikken
Я не могу. И поскольку я могу подключиться к telnet и выпустить команду, на которую она зависает, и получить ответ, я не думаю, что это проблема. Кроме того, это работало до того, как я перешел на другую версию WAMPSERVER на другом компьютере. Я не уверен на 100%, но я думаю, что это был 64-битный 2.4.2 apache и теперь 32-бит 2.2.22. Версия PHP должна быть одинаковой. – user2221400
Далее в строке: можете ли вы 'fsockopen()' подключиться к серверу smtp и что вы получите, если вы вручную напишите строку EHLO? – Wrikken