Подключитесь к почтовому серверу outlook.com с помощью PHP cURL

Я пытаюсь получить полный ответ с живого почтового сервера, используя php и curl. Я пытался подключиться по протоколу pop3, но он не работает.

код-листинг 1:

<?php
// create curl resource
$curl = curl_init();

if($curl) {
/* Set username and password */
curl_setopt($curl, CURLOPT_USERNAME, "[email protected]");
curl_setopt($curl, CURLOPT_PASSWORD, "password");

curl_setopt($curl, CURLOPT_URL, "pop3://pop3.live.com");
curl_setopt($curl, CURLOPT_PORT, 995);

curl_setopt($curl, CURLOPT_USE_SSL,CURLUSESSL_ALL);

curl_setopt($curl, CURLOPT_CAINFO, "./certificate.pem");

curl_setopt($curl, CURLOPT_VERBOSE, true);

//return the transfer as a string
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

// $output contains the output string
$output = curl_exec($curl);
}

echo $output;

curl_close($curl);
?>

Когда я использую этот код (с pop3 Протокол). стандартный вывод сообщает, что клиент успешно подключился к порту 995. Но не удается прочитать ответ.

Ошибка чтения ответа

Закрытие соединения 0

но когда я использую HTTPS протокол вместо pop3 (по тому же коду) я получаю частичный ответ. Он выглядит как весь заголовок ответа, по крайней мере, так он выглядит, поскольку выводит две новые строки после последнего текста.

Принять: * / *

2

Решение

cURL имеет другой идентификатор протокола для безопасного POP через SSL.

Вместо pop3:// пытаться pop3s:// и ты должен получить ответ обратно.

* Rebuilt URL to: pop3s://pop3.live.com/
* Hostname was NOT found in DNS cache
*   Trying 134.170.170.231...
* Connected to pop3.live.com (134.170.170.231) port 995 (#0)
* successfully set certificate verify locations:
*   CAfile: none
CApath: /etc/ssl/certs
* SSL connection using ECDHE-RSA-AES256-SHA
* Server certificate:
*    subject: C=US; ST=Washington; L=Redmond; O=Microsoft Corporation; CN=*.hotmail.com
*    start date: 2015-12-15 22:26:11 GMT
*    expire date: 2016-12-15 22:26:11 GMT
*    subjectAltName: pop3.live.com matched
*    issuer: C=BE; O=GlobalSign nv-sa; CN=GlobalSign Organization Validation CA - SHA256 - G2
*    SSL certificate verify ok.
< +OK DUB006-POP162 POP3 server ready
> CAPA
< -ERR unrecognized command
> USER me@xxx
< +OK password required
> PASS pass
< +OK Logged in.
> LIST
< +OK 5226 messages:
string(59927) "1 1830
2 69432
3 2751
4 2726
5 18506
6 2868
7 4636
8 1955
9 2242
10 3697
1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]