שטעלן אַ פּראָקסי־IP פֿאַר אַ Guzzle־בקשה
ניץ 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. אַ ליידיקע ליסטע איז נוצלעך פֿאַר אַן איזאָלירטן פּראָקסי־טעסט. אויב די אַפּליקאַציע האָט בכּיוון בייפּאַס־כּללים, האַלט זיי בפֿירוש.