I-configure ang PHP cURL para sa IMAPS sa Pamamagitan ng SOCKS
Magtakda ng rutang IMAPS sa isang handle ng PHP cURL na ang naka-link na libcurl ay sumusuporta sa IMAP, na may hiwalay na mga account sa mail at proxy.
$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,
]);Isina-configure nito ang paglilipat ng mail ng umiiral na application; ang cURL runtime ng PHP ay dapat naka-link sa libcurl na may suporta sa IMAP. Ang presensya lamang nito ay hindi nagpapatunay sa bawat built na protocol. Palitan ang mga endpoint at ang UID ng mailbox. Para sa isang mail server na naaabot ng publiko kung saan pinapayagan ang mga pampublikong tagapamagitan, ang listahan ng mga proxy na SOCKS5 ay nag-aalok ng mga kandidato para sa ipinakitang proxy URL na walang kredensyal; kumpirmahin ang pag-access sa aktwal na mail host at port habang pinapanatili ang mail account at mga setting ng TLS.
CURLOPT_USERNAME/CURLOPT_PASSWORD ay nagpapatotoo sa mail server. Ang isang SOCKS account, kapag kailangan, ay gumagamit ng hiwalay na sinusuportahang mga opsyon sa kredensyal ng proxy. Ang PHP IMAP extension ay isa pang client at hindi kino-configure ng mga setting na ito.
Panatilihing naka-enable ang pag-verify ng certificate at hostname para sa destinasyong IMAPS. Ang hindi pagpapagana sa dalawa ay hindi paunang kundisyon sa routing.
Sa panahon ng paghawak ng paglilipat/resulta ng application, tukuyin ang nabigong yugto: negosasyon ng SOCKS, TLS ng mail, pag-login sa IMAP o pagpili ng mailbox. Ang naaabot na proxy ay hindi nagpapakita na may UID 1.