Valkosturinn proxy í Guzzle tekur við fullri endapunkts-URL. Stilltu hann á beiðninni þegar aðeins sú aðgerð á að nota IP-töluna sem þú valdir.

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

Dæmið gerir ráð fyrir Guzzle 7 uppsettu með Composer. Skiptu skýringarvistfanginu út fyrir raunverulegan HTTP-milliþjón frá veitanda eða úr listanum yfir HTTP-milliþjóna. Hafðu áfangastaðinn í beiðni-URL: milliþjónninn er milliliður, ekki tilföngin sem sótt eru.

Hér er http_errors false svo HTTP-villusvar sé áfram tiltækt til skoðunar. Tengivillur kasta enn flutningsundantekningum. HTTPS-göng sem er hafnað við uppsetningu geta því brugðist áður en þú færð venjulegan svarhlut frá vefsíðu.

Athugaðu meðhöndlarann ef tengimörk hegða sér öðruvísi

Guzzle getur notað ólíka HTTP-meðhöndlara. Samkvæmt skjölunum styður innbyggði cURL-meðhöndlarinn connect_timeout. Sérsniðinn meðhöndlari eða umhverfi án PHP cURL er ekki endilega jafngilt. Athugaðu meðhöndlara forritsins áður en þú gerir ráð fyrir að afritaður tímamarkavalkostur virki.

Einnig er gagnlegt að stilla heildar-timeout. Færslur ókeypis lista geta hætt að svara milli athugana og sjálfgefna gildið er ekki gagnlegur lokafrestur fyrir beiðni sem verður að ljúka fljótt.

Notkun proxy-vörpunar

Vörpun leyfir val á leið eftir skema áfangastaðar og skýra tilgreiningu hýsla sem fara fram hjá milliþjóninum:

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

Notaðu þetta fylki í stað strengvalkostsins. HTTPS-lykillinn velur HTTPS-áfangastaði; HTTP-gildi hans lýsir enn hlustara milliþjónsins. Önnur hlustunarsamskiptaregla krefst annarrar stillingar endapunkts.

Þegar þú gefur proxy-valkost beiðninnar sjálfur gerir Guzzle ráð fyrir að þú gefir tilætluð no-gildi en afriti þau ekki sjálfkrafa úr NO_PROXY. Tómur listi er gagnlegur fyrir einangrað milliþjónspróf. Séu vísvitandi framhjáleiðarreglur í forritinu skaltu varðveita þær sérstaklega.

Tengdir greinar