તે PHP multi-cURL ટ્રાન્સફરે કયો પ્રોક્સી વાપર્યો?
દરેક cURL હેન્ડલ સાથે પ્રોક્સી મેટાડેટા રાખો અને કન્ફિગર કરેલા રૂટને ગંતવ્ય-જોવાયેલા એક્ઝિટ IP થી અલગ કરો.
multi-cURL ટ્રાન્સફર તેમના પોતાના ક્રમમાં પૂર્ણ થાય છે. જો તમે દરેક હેન્ડલને અલગ પ્રોક્સી સોંપી હોય, તો પ્રથમ પૂર્ણ થયેલું પરિણામ જરૂરી નથી કે તમારી ઇનપુટ સૂચીની પ્રથમ પ્રોક્સીનું હોય.
દરેક હેન્ડલ કન્ફિગર કરતી વખતે સ્થિર ટ્રાન્સફર ઓળખકર્તા જોડો. જો તમે પસંદ કરી શકાય તેવા સાર્વજનિક એન્ડપોઇન્ટની ચકાસણી કરી રહ્યા છો, તો HTTP પ્રોક્સી સૂચી 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 = curl_getinfo($message['handle'], CURLINFO_PRIVATE);
તે ઓળખકર્તા દ્વારા કી કરેલી એપ્લિકેશન રેકોર્ડ રાખો જેમાં ગંતવ્ય, કન્ફિગર કરેલ પ્રોક્સી અને પ્રયાસ નંબર હોય. બીજી પ્રોક્સી દ્વારા ફરી પ્રયાસ નવા પ્રયાસ રેકોર્ડને લાયક છે, ભલે તે એક જ એકંદર કામનું હોય.
ત્રણ પ્રકારના સરનામાં અલગ રાખો
કન્ફિગર કરેલ પ્રોક્સી એન્ડપોઇન્ટ એ cURL ને આપવામાં આવતું સરનામું છે. કનેક્શનનું પીઅર સરનામું cURL એ ખોલેલું નેટવર્ક કનેક્શનનું વર્ણન કરે છે. ગંતવ્ય-જોવાયેલા એક્ઝિટ IP એ બીજી બાજુથી જણાવાયેલી માહિતી છે. તે અલગ હોઈ શકે, ખાસ કરીને ચેઇન્ડ અથવા પ્રદાતા-સંચાલિત પ્રોક્સી સાથે.
ખાનગી મેટાડેટા તમારી ઇચ્છિત રૂપરેખા રેકોર્ડ કરે છે; તે સાબિત કરી શકતું નથી કે ગંતવ્યે કયું IP જોયું. ઊલટું, ગંતવ્યનો IP પ્રતિભાવ તમને આપમેળે જણાવતો નથી કે તમારા પ્રોગ્રામમાં કયું હેન્ડલે તેને ઉત્પન્ન કર્યું.
નિયમિત લોગમાં સુરક્ષિત પ્રોક્સી ઓળખકર્તા સંગ્રહો. જો સંપૂર્ણ એન્ડપોઇન્ટમાં ઓળખપત્રો હોય, તો દરેક નિષ્ફળ ટ્રાન્સફર માટે તે URL લોગ કરવાથી પાસવર્ડ તમારા આખા ભૂલ સંગ્રહમાં ફેલાય છે.
આ નાનું હિસાબી પગલું મિશ્ર પરિણામો વાંચવાનું સરળ બનાવે છે: એક કામ, એક પ્રયાસ, એક પસંદ કરેલ પ્રોક્સી અને એક વાસ્તવિક પરિણામ. તે PHP ના સંસાધન-આધારિત અને ઓબ્જેક્ટ-આધારિત cURL API વચ્ચે બદલાયેલા આકસ્મિક હેન્ડલ રજૂઆતો પર આધાર રાખવાનું ટાળે છે.