Подтвердить что ты не робот

Ошибка сертификата с использованием IMAP в PHP

Я использовал все возможные комбинации имени хоста, но я всегда либо получаю ошибку сертификата, либо просто поврежденное соединение IMAP.

Ошибка сертификата для imap.froiden.com: имя сервера не совпадает сертификат:/O=imap.mailhostbox.com/OU=Go to https://www.thawte.com/repository/index.html/OU=Thawte SSL123 сертификат /OU = Домен проверен /CN = imap.mailhostbox.com

Имя хоста, которое я использовал, это "{imap.froiden.com}INBOX". Любое предложение решить эту ошибку?

4b9b3361

Ответ 1

Сертификат недействителен. Вы должны либо подключиться к imap.mailboxhost.com:993/imap/ssl, либо обратиться к администратору почтового сервера и запросить действительный сертификат.

Обратите внимание, что, хотя вы можете использовать строку подключения imap.froiden.com:993/imap/ssl/novalidate-cert, чтобы пропустить проверку сертификата, вы не должны этого делать, поскольку этот флаг позволит любому Man In The Middle, чтобы читать и писать электронную почту.

Ответ 2

Я могу подтвердить, что это хорошо работает:

$mb = imap_open("{phoenix.srv.spletnasoba.si:993/imap/ssl/novalidate-cert}","username", "password" );

$emails = array();
$messageCount = imap_num_msg($mb);
for( $MID = 1; $MID <= $messageCount; $MID++ )
{

    $EmailHeaders = imap_headerinfo( $mb, $MID );
    foreach($EmailHeaders as $key => $value) {
        if (validateEmail($value)) {
            $emails[$value] = $key;
            echo $value."\n";
        }
    }
}



function validateEmail($email) {
    return filter_var($email, FILTER_VALIDATE_EMAIL);
}

Ответ 3

Если вы используете gmail, убедитесь, что вы включили "Разрешить доступ для менее безопасных приложений" на странице настроек учетной записи вашей учетной записи google, чтобы вы могли получить доступ к своей учетной записи gmail с помощью imap_open()