SMTP сервер готов, но "не удалось подключиться" появляется ошибка

Я настроил веб-сервер для использования SMTP-сервера для отправки электронных писем.

Вот раздел записей журнала, созданных, когда я пытаюсь отправить тестовое электронное письмо:

2016-02-03 10:20:01 CLIENT -> SERVER: STARTTLS
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "220 2.0.0 SMTP server ready
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "220 2.0.0 SMTP server ready
                                      "
2016-02-03 10:20:01 SERVER -> CLIENT: 220 2.0.0 SMTP server ready
2016-02-03 10:20:01 SMTP Error: Could not connect to SMTP host.
2016-02-03 10:20:01 CLIENT -> SERVER: QUIT
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is ""
2016-02-03 10:20:01 SMTP -> get_lines(): $data is ""
2016-02-03 10:20:01 SERVER -> CLIENT:
2016-02-03 10:20:01 SMTP ERROR: QUIT command failed:
2016-02-03 10:20:01 Connection: closed
2016-02-03 10:20:01 SMTP Error: Could not connect to SMTP host.

Что может быть проблема?

РЕДАКТИРОВАТЬ: Ниже приведен полный журнал, созданный плагином WP Mail SMTP в WordPress. (Я заменил настоящие домены на example.com для обеспечения конфиденциальности).

Test Message Sent

The result was:
bool(false)


The full debugging output is shown below:
object(PHPMailer)#752 (73) {
  ["Version"]=>
  string(6) "5.2.10"
  ["Priority"]=>
  int(3)
  ["CharSet"]=>
  string(5) "UTF-8"
  ["ContentType"]=>
  string(10) "text/plain"
  ["Encoding"]=>
  string(4) "8bit"
  ["ErrorInfo"]=>
  string(43) "SMTP Error: Could not connect to SMTP host."
  ["From"]=>
  string(17) "sender@example.com"
  ["FromName"]=>
  string(14) "Administration"
  ["Sender"]=>
  string(0) ""
  ["ReturnPath"]=>
  string(0) ""
  ["Subject"]=>
  string(45) "WP Mail SMTP: Test mail to recipient@example.com"
  ["Body"]=>
  string(68) "This is a test email generated by the WP Mail SMTP WordPress plugin."
  ["AltBody"]=>
  string(0) ""
  ["Ical"]=>
  string(0) ""
  ["MIMEBody":protected]=>
  string(69) "This is a test email generated by the WP Mail SMTP WordPress plugin.
"
  ["MIMEHeader":protected]=>
  string(392) "Date: Wed, 3 Feb 2016 10:20:01 +0000
To: recipient@example.com
From: Administration 
Subject: WP Mail SMTP: Test mail to recipient@example.com
Message-ID: 
X-Priority: 3
X-Mailer: PHPMailer 5.2.10 (https://github.com/PHPMailer/PHPMailer/)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

"
  ["mailHeader":protected]=>
  string(0) ""
  ["WordWrap"]=>
  int(0)
  ["Mailer"]=>
  string(4) "smtp"
  ["Sendmail"]=>
  string(18) "/usr/sbin/sendmail"
  ["UseSendmailOptions"]=>
  bool(true)
  ["PluginDir"]=>
  string(0) ""
  ["ConfirmReadingTo"]=>
  string(0) ""
  ["Hostname"]=>
  string(14) "www.example.com"
  ["MessageID"]=>
  string(0) ""
  ["MessageDate"]=>
  string(30) "Wed, 3 Feb 2016 10:20:01 +0000"
  ["Host"]=>
  string(12) "192.168.1.23"
  ["Port"]=>
  string(2) "25"
  ["Helo"]=>
  string(0) ""
  ["SMTPSecure"]=>
  string(0) ""
  ["SMTPAutoTLS"]=>
  bool(true)
  ["SMTPAuth"]=>
  bool(true)
  ["SMTPOptions"]=>
  array(0) {
  }
  ["Username"]=>
  string(9) "workflow"
  ["Password"]=>
  string(10) "example"
  ["AuthType"]=>
  string(0) ""
  ["Realm"]=>
  string(0) ""
  ["Workstation"]=>
  string(0) ""
  ["Timeout"]=>
  int(300)
  ["SMTPDebug"]=>
  bool(true)
  ["Debugoutput"]=>
  string(4) "echo"
  ["SMTPKeepAlive"]=>
  bool(false)
  ["SingleTo"]=>
  bool(false)
  ["SingleToArray"]=>
  array(0) {
  }
  ["do_verp"]=>
  bool(false)
  ["AllowEmpty"]=>
  bool(false)
  ["LE"]=>
  string(1) "
"
  ["DKIM_selector"]=>
  string(0) ""
  ["DKIM_identity"]=>
  string(0) ""
  ["DKIM_passphrase"]=>
  string(0) ""
  ["DKIM_domain"]=>
  string(0) ""
  ["DKIM_private"]=>
  string(0) ""
  ["action_function"]=>
  string(0) ""
  ["XMailer"]=>
  string(0) ""
  ["smtp":protected]=>
  object(SMTP)#643 (13) {
    ["Version"]=>
    string(6) "5.2.10"
    ["SMTP_PORT"]=>
    int(25)
    ["CRLF"]=>
    string(2) "
"
    ["do_debug"]=>
    bool(true)
    ["Debugoutput"]=>
    string(4) "echo"
    ["do_verp"]=>
    bool(false)
    ["Timeout"]=>
    int(300)
    ["Timelimit"]=>
    int(300)
    ["smtp_conn":protected]=>
    NULL
    ["error":protected]=>
    array(4) {
      ["error"]=>
      string(0) ""
      ["detail"]=>
      string(0) ""
      ["smtp_code"]=>
      string(0) ""
      ["smtp_code_ex"]=>
      string(0) ""
    }
    ["helo_rply":protected]=>
    NULL
    ["server_caps":protected]=>
    NULL
    ["last_reply":protected]=>
    string(0) ""
  }
  ["to":protected]=>
  array(1) {
    [0]=>
    array(2) {
      [0]=>
      string(18) "recipient@example.com"
      [1]=>
      string(0) ""
    }
  }
  ["cc":protected]=>
  array(0) {
  }
  ["bcc":protected]=>
  array(0) {
  }
  ["ReplyTo":protected]=>
  array(0) {
  }
  ["all_recipients":protected]=>
  array(1) {
    ["recipient@example.com"]=>
    bool(true)
  }
  ["attachment":protected]=>
  array(0) {
  }
  ["CustomHeader":protected]=>
  array(0) {
  }
  ["lastMessageID":protected]=>
  string(49) ""
  ["message_type":protected]=>
  string(5) "plain"
  ["boundary":protected]=>
  array(3) {
    [1]=>
    string(35) "b1_f87804706227482a31d3248b0776feb6"
    [2]=>
    string(35) "b2_f87804706227482a31d3248b0776feb6"
    [3]=>
    string(35) "b3_f87804706227482a31d3248b0776feb6"
  }
  ["language":protected]=>
  array(19) {
    ["authenticate"]=>
    string(35) "SMTP Error: Could not authenticate."
    ["connect_host"]=>
    string(43) "SMTP Error: Could not connect to SMTP host."
    ["data_not_accepted"]=>
    string(30) "SMTP Error: data not accepted."
    ["empty_message"]=>
    string(18) "Message body empty"
    ["encoding"]=>
    string(18) "Unknown encoding: "
    ["execute"]=>
    string(19) "Could not execute: "
    ["file_access"]=>
    string(23) "Could not access file: "
    ["file_open"]=>
    string(33) "File Error: Could not open file: "
    ["from_failed"]=>
    string(35) "The following From address failed: "
    ["instantiate"]=>
    string(36) "Could not instantiate mail function."
    ["invalid_address"]=>
    string(15) "Invalid address"
    ["mailer_not_supported"]=>
    string(25) " mailer is not supported."
    ["provide_address"]=>
    string(54) "You must provide at least one recipient email address."
    ["recipients_failed"]=>
    string(45) "SMTP Error: The following recipients failed: "
    ["signing"]=>
    string(15) "Signing Error: "
    ["smtp_connect_failed"]=>
    string(22) "SMTP connect() failed."
    ["smtp_error"]=>
    string(19) "SMTP server error: "
    ["variable_set"]=>
    string(30) "Cannot set or reset variable: "
    ["extension_missing"]=>
    string(19) "Extension missing: "
  }
  ["error_count":protected]=>
  int(2)
  ["sign_cert_file":protected]=>
  string(0) ""
  ["sign_key_file":protected]=>
  string(0) ""
  ["sign_extracerts_file":protected]=>
  string(0) ""
  ["sign_key_pass":protected]=>
  string(0) ""
  ["exceptions":protected]=>
  bool(true)
  ["uniqueid":protected]=>
  string(32) "f87804706227482a31d3248b0776feb6"
}


The SMTP debugging output is shown below:
2016-02-03 10:20:01 Connection: opening to 192.168.1.23:25, timeout=300, options=array (
                                      )
2016-02-03 10:20:01 Connection: opened
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "220 AEADTWMAVSM002.example.com Microsoft ESMTP MAIL Service ready at Wed, 3 Feb 2016 14:20:01 +0400
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "220 AEADTWMAVSM002.example.com Microsoft ESMTP MAIL Service ready at Wed, 3 Feb 2016 14:20:01 +0400
                                      "
2016-02-03 10:20:01 SERVER -> CLIENT: 220 AEADTWMAVSM002.example.com Microsoft ESMTP MAIL Service ready at Wed, 3 Feb 2016 14:20:01 +0400
2016-02-03 10:20:01 CLIENT -> SERVER: EHLO www.example.com
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-SIZE 10485760
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-PIPELINING
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-DSN
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-ENHANCEDSTATUSCODES
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-STARTTLS
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-AUTH
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-8BITMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250-BINARYMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      250-BINARYMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data was "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      250-BINARYMIME
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "250 CHUNKING
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      250-BINARYMIME
                                      250 CHUNKING
                                      "
2016-02-03 10:20:01 SERVER -> CLIENT: 250-AEADTWMAVSM002.example.com Hello [192.168.3.51]
                                      250-SIZE 10485760
                                      250-PIPELINING
                                      250-DSN
                                      250-ENHANCEDSTATUSCODES
                                      250-STARTTLS
                                      250-AUTH
                                      250-8BITMIME
                                      250-BINARYMIME
                                      250 CHUNKING
2016-02-03 10:20:01 CLIENT -> SERVER: STARTTLS
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is "220 2.0.0 SMTP server ready
                                      "
2016-02-03 10:20:01 SMTP -> get_lines(): $data is "220 2.0.0 SMTP server ready
                                      "
2016-02-03 10:20:01 SERVER -> CLIENT: 220 2.0.0 SMTP server ready
2016-02-03 10:20:01 SMTP Error: Could not connect to SMTP host.
2016-02-03 10:20:01 CLIENT -> SERVER: QUIT
2016-02-03 10:20:01 SMTP -> get_lines(): $data was ""
2016-02-03 10:20:01 SMTP -> get_lines(): $str is ""
2016-02-03 10:20:01 SMTP -> get_lines(): $data is ""
2016-02-03 10:20:01 SERVER -> CLIENT:
2016-02-03 10:20:01 SMTP ERROR: QUIT command failed:
2016-02-03 10:20:01 Connection: closed
2016-02-03 10:20:01 SMTP Error: Could not connect to SMTP host.
0
задан 12 February 2016 в 10:24
2 ответа

Поскольку вы используете плагин WP Mail SMTP, лучше всего начать отсюда: http://callum-macdonald.com/code/wp-mail-smtp . Вот что говорит разработчик:

Не удалось подключиться к хосту

Если вы видите ошибку типа «Не удалось подключиться к серверу», плагин не работает. работает, PHP не может подключиться к серверу. Посмотрите на всю ошибку сообщение и расследуйте оттуда. Проверьте свои настройки php.ini вокруг fopen (), проверьте правильность вашего SMTP-хоста или свяжитесь с вашим администратор сервера.

Если ваша ошибка - «Не удается подключиться к хосту», обратитесь в службу поддержки. где-либо еще, пожалуйста, не просите поддержки здесь. Эти вопросы имеют спрашивали много раз раньше, пожалуйста, поищите в истории. Плагин работает, проблема кроется в другом.

Поскольку вы не опубликовали свои настройки для плагина, и поскольку он предлагает различные возможности конфигурации, вот несколько моментов, которые могут вам помочь.

  • Ошибка отладки говорит: «Ошибка SMTP : Не удалось выполнить аутентификацию. ", Поэтому проверьте и убедитесь, что ваша аутентификационная информация верна.
  • Плагин предлагает параметры рассылки как php-mailer, так и SMTP, поэтому попробуйте оба и убедитесь. Для php-mailer проверьте необходимые настройки php, как указано выше.
  • Что касается проблем с SMTP, вы можете запустить сеанс smtp с помощью telent с веб-сервера и предоставить данные, которые вы используете в плагине, чтобы увидеть, работает ли он или нет. Вот: Как проверить SMTP-соединение с помощью сеанса Telnet вручную.
1
ответ дан 4 December 2019 в 13:43

Предположительно - вы настроили свой SMTP-клиент так, чтобы он требовал безопасных соединений (отсюда и запрос STARTTLS к серверу), но SMTP-сервер его не понимает, поэтому клиент решает это не удается подключиться?

(Также возможно, что вы пытаетесь подключиться к порту 25, а не к порту 587, который чаще используется для TLS SMTP. Если вы подключаетесь к порту 25, вам необходимо выполнить рукопожатие сервера перед выдача команды "STARTTLS").

1
ответ дан 4 December 2019 в 13:43

Теги

Похожие вопросы