شۇ PHP multi-cURL يۆتكەش قايسى proxy نى ئىشلەتكەن؟
ھەر بىر cURL handle بىلەن proxy مېتاداتىسىنى ساقلاپ، سەپلەنگەن يولنى مەنزىل كۆرگەن exit IP دىن ئايرىڭ.
multi-cURL يۆتكەشلەر ئۆز تەرتىپىدە تاماملىنىدۇ. ئەگەر ھەر بىر handle غا ئوخشىمايدىغان proxy تەيىنلىگەن بولسىڭىز، ئەڭ ئاۋۋال تاماملانغان نەتىجە كىرگۈزۈش تىزىملىكىڭىزدىكى بىرىنچى proxy غا تەۋە بولۇشى شەرت ئەمەس.
ھەر بىر handle نى سەپلىگەندە مۇقىم يۆتكەش ID سىنى باغلاڭ. ئەگەر تاللاشقا بولىدىغان ئاممىۋى endpoint لارنى سىناۋاتقان بولسىڭىز، HTTP proxy تىزىملىكى HTTP نامزاتلىرىنى تەمىنلەيدۇ. PHP libcurl نىڭ شەخسىي سانلىق مەلۇمات مېخانىزىمىنى ئاشكارىلايدۇ:
$id = 'job-17';
curl_setopt($handle, CURLOPT_PROXY, 'http://203.0.113.10:8080');
curl_setopt($handle, CURLOPT_PRIVATE, $id);
curl_multi_info_read() تاماملانغان يۆتكەش توغرىسىدا دوكلات قىلغاندا، ID نى ئەسلىگە كەلتۈرۈش ئۈچۈن قايتۇرۇلغان handle نى ئىشلىتىڭ:
$id = curl_getinfo($message['handle'], CURLINFO_PRIVATE);
شۇ ID بىلەن ئاچقۇچلانغان قوللانما خاتىرىسىنى ساقلاڭ، ئۇنىڭدا مەنزىل، سەپلەنگەن proxy ۋە سىناق نومۇرى بولىدۇ. باشقا proxy ئارقىلىق قايتا سىناش يېڭى سىناق خاتىرىسىگە لايىق، گەرچە ئۇ ئوخشاش ئومۇمىي خىزمەتكە تەۋە بولسىمۇ.
ئۈچ خىل ئادرېسنى ئايرىپ ساقلاڭ
سەپلەنگەن proxy endpoint cURL غا بېرىلگەن ئادرېس. ئۇلىنىشنىڭ peer ئادرېسى cURL ئاچقان تور ئۇلىنىشىنى تەسۋىرلەيدۇ. مەنزىل كۆرگەن exit IP قارشى تەرەپتىن دوكلات قىلىنغان ئۇچۇر. ئۇلار پەرقلىنىشى مۇمكىن، بولۇپمۇ زەنجىرسىمان ياكى تەمىنلىگۈچى باشقۇرىدىغان proxy لاردا.
شەخسىي مېتاداتا نىيەتلىگەن سەپلىمىڭىزنى خاتىرىلەيدۇ؛ مەنزىل قايسى IP نى كۆرگەنلىكىنى ئىسپاتلىيالمايدۇ. ئەكسىچە، مەنزىلنىڭ IP جاۋابى پروگراممىڭىزدىكى قايسى handle نىڭ ئۇنى ھاسىل قىلغانلىقىنى ئاپتوماتىك ئېيتىپ بەرمەيدۇ.
كۈندىلىك خاتىرىلەردە بىخەتەر proxy ID نى ساقلاڭ. ئەگەر تولۇق endpoint ئىسپاتنامىلەرنى ئۆز ئىچىگە ئالسا، ھەر بىر مەغلۇب بولغان يۆتكەش ئۈچۈن شۇ URL نى خاتىرىلەش پارولنى پۈتۈن خاتالىق توپلىمىڭىزغا تارقىتىدۇ.
بۇ كىچىك ھېسابات قەدىمى ئارىلاش نەتىجىلەرنى ئوقۇشنى ئاسانلاشتۇرىدۇ: بىر خىزمەت، بىر سىناق، بىر تاللانغان proxy ۋە بىر ھەقىقىي نەتىجە. شۇنداقلا PHP نىڭ بايلىققا ئاساسلانغان ۋە ئوبيېكتقا ئاساسلانغان cURL API لىرى ئارىسىدا ئۆزگەرگەن تاسادىپىي handle ئىپادىلىرىگە تايىنىشتىن ساقلىنىدۇ.