Ni proxy gani iliyotumiwa na uhamishaji huo wa PHP multi-cURL?
Weka metadata ya proxy pamoja na kila handle ya cURL na utofautishe njia iliyosanidiwa na exit IP inayoonekana na mwisho.
Uhamishaji wa multi-cURL hukamilika kwa mpangilio wake. Ikiwa uliweka proxy tofauti kwa kila handle, matokeo ya kwanza kukamilika hayahitaji kuwa ya proxy ya kwanza kwenye orodha yako ya ingizo.
Ambatisha kitambulisho thabiti cha uhamishaji unaposanidi kila handle. Ikiwa unajaribu endpoint za umma zinazoweza kuchaguliwa, orodha ya proxy ya HTTP hutoa wagombea wa HTTP. PHP hufichua utaratibu wa data ya kibinafsi wa libcurl:
$id = 'job-17';
curl_setopt($handle, CURLOPT_PROXY, 'http://203.0.113.10:8080');
curl_setopt($handle, CURLOPT_PRIVATE, $id);
Wakati curl_multi_info_read() inaripoti uhamishaji uliokamilika, tumia handle iliyorudishwa kupata kitambulisho:
$id = curl_getinfo($message['handle'], CURLINFO_PRIVATE);
Weka rekodi ya programu iliyofungwa kwa kitambulisho hicho inayojumuisha mwisho, proxy iliyosanidiwa na nambari ya jaribio. Jaribio jipya kupitia proxy nyingine linastahili rekodi mpya ya jaribio, hata ikiwa ni ya kazi moja kwa ujumla.
Tenganisha aina tatu za anwani
Endpoint ya proxy iliyosanidiwa ni anwani inayotolewa kwa cURL. Anwani ya peer ya muunganisho inaelezea muunganisho wa mtandao ambao cURL ilifungua. Exit IP inayoonekana na mwisho ni taarifa inayoripotiwa kutoka upande mwingine. Zinaweza kutofautiana, hasa na proxy za mnyororo au zinazosimamiwa na mtoa huduma.
Metadata ya kibinafsi hurekodi usanidi uliokusudiwa; haiwezi kuthibitisha ni IP gani mwisho uliona. Kinyume chake, jibu la IP la mwisho haliambii kiotomatiki ni handle gani katika programu yako iliyoizalisha.
Hifadhi kitambulisho salama cha proxy kwenye kumbukumbu za kawaida. Ikiwa endpoint kamili ina vitambulisho, kurekodi URL hiyo kwa kila uhamishaji ulioshindwa huenea nenosiri katika mkusanyiko wako wote wa makosa.
Hatua hii ndogo ya uhasibu hurahisisha kusoma matokeo mchanganyiko: kazi moja, jaribio moja, proxy moja iliyochaguliwa na matokeo moja halisi. Pia inaepuka kutegemea uwakilishi wa handle wa bahati nasibu ambao ulibadilika kati ya API za cURL za PHP zinazotegemea rasilimali na vitu.