Vir 'n gewone HTTP-versoek sonder PHP cURL, gee 'n proxykonteks aan die HTTP-stroomomslag:

$context = stream_context_create([
    'http' => [
        'proxy' => 'tcp://203.0.113.10:8080',
        'request_fulluri' => true,
        'timeout' => 10,
    ],
]);
$body = file_get_contents('http://example.com/', false, $context);

Vervang die dokumentasie-eindpunt met jou HTTP-proxy of 'n kandidaat uit die HTTP-proxylis. HTTP-kontekskoppelvlak verwag 'n TCP-adres vir proxy. request_fulluri=true plaas die volledige bestemming-URI in die versoekreël, soos baie vorentoe-proxies vereis. Die tydsperdatum beperk die stroombewerking onder daardie omslag se reëls.

Kontroleer die teruggekeerde waarde en waarskuwing voordat jy die liggaam ontleed; 'n mislukte lesing en 'n leë suksesvolle antwoord vereis verskillende hantering. Begin diagnose met hierdie enkele HTTP-bestemming en begrensde versoek. HTTPS voeg tonneling en TLS-gedrag by wat vir die werklike omslag/PHP-weergawe nagegaan moet word; hierdie voorbeeld vestig nie daardie vermoëns nie.

Om die konteks by hierdie oproep te gee, hou die roete sigbaar en vermy dit om onverwante URL-lesings te verander. 'n Gedeelde verstekkonteks is slegs gepas wanneer die toepassing daardie beleid doelbewus wil hê; biblioteke moet die wyer omvang daarvan in ag neem.

Dit stel PHP-strome op, nie 'n onafhanklik geskepte cURL-handvatsel, 'n blaaier of 'n ander proses nie. Identifiseer 'n pakket se werklike HTTP-vervoer voordat jy verwag dat dit hierdie konteks sal gebruik.

Verwante artikels