For en vanlig HTTP-forespørsel uten PHP cURL, send en proxykontekst til HTTP-strømomslaget:

$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);

Erstatt dokumentasjonsendepunktet med din HTTP-proxy eller en kandidat fra listen over HTTP-proxyer. HTTP-kontekstgrensesnittet forventer en TCP-adresse for proxy. request_fulluri=truesetter hele mål-URI-en i forespørselslinjen, slik mange videresendende proxyer krever. Tidsavbruddet begrenser strømoperasjonen etter reglene til det omslaget.

Kontroller returverdien og advarselen før du analyserer kroppen; en mislykket lesing og et tomt vellykket svar krever ulik håndtering. Start feilsøkingen med denne ene HTTP-destinasjonen og en avgrenset forespørsel. HTTPS legger til tunneling og TLS-atferd som må kontrolleres for den faktiske omslags- og PHP-versjonen; dette eksempelet etablerer ikke disse egenskapene.

Å sende konteksten i dette kallet holder ruten synlig og unngår å endre urelaterte URL-lesinger. En delt standardkontekst er bare passende når applikasjonen bevisst ønsker den policyen; biblioteker bør ta høyde for det bredere omfanget.

Dette konfigurerer PHP-strømmer, ikke et uavhengig opprettet cURL-håndtak, en nettleser eller en annen prosess. Identifiser den faktiske HTTP-transporten til en pakke før du forventer at den bruker denne konteksten.

Relaterte artikler