För en vanlig HTTP-förfrågan utan PHP cURL, skicka en proxykontext till 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);

Byt ut dokumentationsslutpunkten mot din HTTP-proxy eller en kandidat från HTTP-proxylistan. HTTP-kontextgränssnittet förväntar sig en TCP-adress för proxy. request_fulluri=true placerar hela destinations-URI:n i förfrågningsraden, som många vidarebefordrande proxyservrar kräver. Tidsgränsen begränsar strömoperationen enligt omslagets regler.

Kontrollera det returnerade värdet och varningen innan du tolkar brödtexten; en misslyckad läsning och ett tomt lyckat svar kräver olika hantering. Börja felsökningen med denna enda HTTP-destination och begränsade förfrågan. HTTPS tillför tunneling och TLS-beteende som måste kontrolleras för den faktiska omslags-/PHP-versionen; det här exemplet fastställer inte dessa funktioner.

Att skicka kontexten vid detta anrop håller rutten synlig och undviker att ändra orelaterade URL-läsningar. En delad standardkontext är lämplig endast när programmet medvetet vill ha den policyn; bibliotek bör ta hänsyn till dess bredare omfattning.

Detta konfigurerar PHP-strömmar, inte ett självständigt skapat cURL-handtag, en webbläsare eller en annan process. Identifiera ett pakets faktiska HTTP-transport innan du förväntar dig att det använder denna kontext.

Relaterade artiklar