Configurar PHP cURL para IMAPS a través de SOCKS
Estableza unha ruta IMAPS nun identificador PHP cURL cuxo libcurl ligado admita IMAP, con contas de correo e de proxy separadas.
$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,
]);
Isto configura o transporte de correo dunha aplicación existente; a contorna de execución cURL de PHP debe estar ligada a libcurl con soporte de IMAP. A súa soa presenza non establece todos os protocolos compilados. Substitúa os puntos finais e o UID do buzón. Para un servidor de correo accesible publicamente onde se permitan intermediarios públicos, a lista de proxies SOCKS5 ofrece candidatos para o URL de proxy sen credenciais mostrado; confirme o acceso ao host e porto de correo reais mantendo a conta de correo e a configuración TLS.
CURLOPT_USERNAME/CURLOPT_PASSWORD autentícanse no servidor de correo. Unha conta SOCKS, cando é necesaria, usa opcións de credenciais de proxy compatibles separadas. A extensión PHP IMAP é outro cliente e non se configura con estes axustes.
Manteña activada a verificación de certificado e de nome de host para o destino IMAPS. Desactivalas ambas non é un requisito previo de enrutamento.
Durante o manexo de transferencia/resultado da aplicación, identifique a etapa fallida: negociación SOCKS, TLS de correo, inicio de sesión IMAP ou selección de buzón. Un proxy accesible non demostra que o UID 1 exista.