Mae opsiwn proxy Guzzle yn derbyn URL pwynt terfyn llawn. Gosodwch ef ar y cais pan ddylai’r weithred honno yn unig ddefnyddio’r IP a ddewiswyd.

<?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();

Mae’r enghraifft yn tybio bod Guzzle 7 wedi’i osod drwy Composer. Disodlwch y cyfeiriad dogfennu â dirprwy HTTP go iawn gan y darparwr neu’r rhestr dirprwyon HTTP. Cadwch y gyrchfan yn URL y cais: canolwr yw’r dirprwy, nid yr adnodd sy’n cael ei lawrlwytho.

Yma mae http_errors yn false fel bod ymateb gwall HTTP ar gael i’w archwilio o hyd. Mae methiannau cysylltu’n dal i godi eithriadau trosglwyddo. Felly gall twnnel HTTPS a wrthodir wrth ei sefydlu fethu cyn i chi dderbyn gwrthrych ymateb gwefan arferol.

Gwiriwch y triniwr pan fo terfynau cysylltu’n ymddwyn yn wahanol

Gall Guzzle ddefnyddio trinwyr HTTP gwahanol. Dywed y ddogfennaeth fod y triniwr cURL adeiledig yn cefnogi connect_timeout. Nid yw triniwr personol nac amgylchedd heb PHP cURL o reidrwydd yn gyfwerth. Gwiriwch driniwr yr ap cyn tybio bod opsiwn terfyn amser a gopïwyd yn gweithio.

Mae’n werth gosod y timeout cyffredinol hefyd. Gall cofnodion rhestrau am ddim roi’r gorau i ateb rhwng gwiriadau, ac nid yw’r rhagosodiad yn derfyn defnyddiol i gais sy’n gorfod gorffen yn brydlon.

Defnyddio map dirprwy

Mae map yn gadael i chi ddewis llwybrau yn ôl cynllun y gyrchfan a rhoi gwesteiwyr osgoi’n benodol:

'proxy' => [
    'http' => 'http://203.0.113.10:8080',
    'https' => 'http://203.0.113.10:8080',
    'no' => [],
],

Defnyddiwch yr arae hon yn lle’r opsiwn llinyn. Mae’r allwedd HTTPS yn dewis cyrchfannau HTTPS; mae’i gwerth HTTP yn dal i ddisgrifio gwrandäwr y dirprwy. Mae protocol gwrando gwahanol yn gofyn am ffurfweddiad pwynt terfyn gwahanol.

Pan fyddwch yn darparu opsiwn proxy y cais eich hun, mae Guzzle yn disgwyl i chi roi’r gwerthoedd no bwriadedig, yn hytrach na’u copïo’n awtomatig o NO_PROXY. Mae rhestr wag yn ddefnyddiol ar gyfer prawf dirprwy ar wahân. Os oes gan yr ap reolau osgoi bwriadol, cadwch nhw’n benodol.

Erthyglau cysylltiedig