$handle = curl_init('imaps://mail.example.com/INBOX/;UID=1');
curl_setopt_array($handle, [
    CURLOPT_PROXY => 'socks5h://203.0.113.10:1080',
    CURLOPT_USERNAME => getenv('MAIL_USER'),
    CURLOPT_PASSWORD => getenv('MAIL_PASSWORD'),
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_CONNECTTIMEOUT => 5,
    CURLOPT_TIMEOUT => 20,
]);

Это настраивает передачу почты существующего приложения; среда выполнения cURL в PHP должна быть связана с libcurl с поддержкой IMAP. Само по себе её наличие не подтверждает все встроенные протоколы. Замените конечные точки и UID почтового ящика. Для публично доступного почтового сервера, где разрешены публичные посредники, список SOCKS5-прокси предлагает кандидатов для показанного URL прокси без учётных данных; подтвердите доступ к фактическому хосту и порту почты, сохранив учётную запись почты и настройки TLS.

CURLOPT_USERNAME/CURLOPT_PASSWORD выполняют аутентификацию на почтовом сервере. Учётная запись SOCKS, когда она требуется, использует отдельные поддерживаемые параметры учётных данных прокси. Расширение PHP IMAP — другой клиент, и эти настройки его не настраивают.

Оставьте включённой проверку сертификата и имени хоста для назначения IMAPS. Отключение обеих не является обязательным условием маршрутизации.

При обработке передачи/результата в приложении определите отказавший этап: согласование SOCKS, TLS почты, вход в IMAP или выбор почтового ящика. Доступный прокси не показывает, что UID 1 существует.

Похожие статьи