د Guzzle غوښتنې لپاره پراکسي IP وټاکئ
د Guzzle د هرې غوښتنې proxy انتخاب، په سمبالوونکي پورې تړلې د اړیکې موده او څرګند بایپاس لېست وپېژنئ.
د Guzzle proxy انتخاب د پای ټکي بشپړ URL مني. هغه په غوښتنه وټاکئ چې یوازې همدا عمل ټاکل شوې IP وکاروي.
<?php
require __DIR__ . '/vendor/autoload.php';
$client = new GuzzleHttp\Client();
$response = $client->request('GET', 'https://example.com/', [
'proxy' => 'http://203.0.113.10:8080',
'connect_timeout' => 5,
'timeout' => 15,
'http_errors' => false,
]);
echo $response->getStatusCode(), PHP_EOL;
echo (string) $response->getBody();
بېلګه فرض کوي چې Guzzle 7 د Composer له لارې نصب دی. د سند پته د برابرونکي یا HTTP پراکسي لېست له رښتینې HTTP پراکسي سره بدله کړئ. موخه د غوښتنې په URL کې وساتئ؛ پراکسي منځګړی دی، نه ښکته کېدونکې سرچینه.
دلته http_errors false دی څو د HTTP خطا ځواب د کتنې لپاره پاتې شي. د اړیکې ناکامۍ لا هم د لېږد استثناوې غورځوي. نو د جوړېدو پر مهال رد شوی HTTPS تونل د عادي وېبپاڼې د ځواب څیز تر ترلاسه کولو مخکې ناکامېدلای شي.
که د اړیکې حدود بل ډول کار کوي، سمبالوونکی وګورئ
Guzzle بېلابېل HTTP سمبالوونکي کارولای شي. اسناد وايي دنننی cURL سمبالوونکی connect_timeout ملاتړ کوي. دودیز سمبالوونکی یا له PHP cURL پرته چاپېریال ضرور مساوي نه دی. مخکې له دې چې نقل شوی د وخت انتخاب اغېزمن وبولئ، د اپلېکېشن سمبالوونکی وګورئ.
ټولیز timeout هم ټاکل ښه دي. د وړیا لېست ثبتونه د کتنو ترمنځ ځواب بندولای شي، او اصلي ارزښت د ژر بشپړېدونکې غوښتنې لپاره ګټوره وروستۍ موده نه ده.
د پراکسي نقشې کارول
نقشه د موخې د سکیم له مخې لارې ټاکل او له پراکسي تېرېدونکي کوربه په څرګنده ورکول پرېږدي:
'proxy' => [
'http' => 'http://203.0.113.10:8080',
'https' => 'http://203.0.113.10:8080',
'no' => [],
],
دا ارې د متن انتخاب پر ځای وکاروئ. HTTPS کیلي HTTPS موخې ټاکي؛ HTTP ارزښت یې لا هم د پراکسي اورېدونکی بیانوي. د اورېدونکي بېل پروتوکول د پای ټکي بېل تنظیم غواړي.
چې د غوښتنې proxy انتخاب پخپله ورکوئ، Guzzle تمه لري مطلوب no ارزښتونه هم ورکړئ، نه دا چې له NO_PROXY یې په خپله نقل کړي. تش لېست د جلا پراکسي ازموینې لپاره ګټور دی. که اپلېکېشن قصدي بایپاس اصول لري، هغه په څرګنده وساتئ.