PHP cURL-ді IMAPS үшін SOCKS арқылы конфигурациялау
Байланысқан libcurl IMAP қолдайтын PHP cURL тұтқасында IMAPS маршрутын орнатыңыз, пошта және прокси тіркелгілері бөлек.
$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,
]);
Бұл бар қолданбаның пошта тасымалын конфигурациялайды; PHP cURL орындау ортасы IMAP қолдайтын libcurl-ге байланысуы керек. Оның тек болуы барлық құрастырылған протоколды дәлелдемейді. Соңғы нүктелер мен пошта жәшігінің UID мәнін ауыстырыңыз. Жалпыға қолжетімді пошта сервері үшін, онда жалпы делдалдарға рұқсат етілген, SOCKS5 прокси тізімі көрсетілген тіркелгі деректерінсіз прокси URL үшін кандидаттар ұсынады; пошта тіркелгісі мен TLS параметрлерін сақтай отырып, нақты пошта хосты мен портына қатынасты растаңыз.
CURLOPT_USERNAME/CURLOPT_PASSWORD пошта серверінде аутентификация жасайды. SOCKS тіркелгісі қажет болғанда бөлек қолдау көрсетілетін прокси тіркелгі деректері нұсқаларын пайдаланады. PHP IMAP кеңейтімі басқа клиент және бұл параметрлермен конфигурацияланбайды.
IMAPS мақсаты үшін сертификат пен хост атауын тексеруді қосулы қалдырыңыз. Екеуін де өшіру маршруттаудың алғышарты емес.
Қолданбаның тасымалдау/нәтиже өңдеуі кезінде сәтсіз кезеңді анықтаңыз: SOCKS келіссөзі, пошта TLS, IMAP кіруі немесе пошта жәшігін таңдау. Қолжетімді прокси UID 1 бар екенін көрсетпейді.