Por ordinara HTTP-peto sen PHP cURL, transdonu prokuran kuntekston al la HTTP-flua envolvilo:

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

Anstataŭigu la dokumentan finpunkton per via HTTP-prokurilo aŭ per kandidato el la listo de HTTP-prokuriloj. La HTTP-kunteksta interfaco postulas TCP-adreson por proxy. request_fulluri=truemetas la kompletan celan URI en la petlinion, kiel multaj antaŭaj prokuriloj postulas. La tempolimo limigas la fluan operacion laŭ la reguloj de tiu envolvilo.

Kontrolu la redonitan valoron kaj la averton antaŭ ol analizi la korpon; malsukcesa legado kaj malplena sukcesa respondo postulas malsamajn traktadojn. Komencu la diagnozon per ĉi tiu unu HTTP-celo kaj limigita peto. HTTPS aldonas tuneladon kaj TLS-konduton, kiujn oni devas kontroli por la reala envolvilo/PHP-versio; ĉi tiu ekzemplo ne establas tiujn kapablojn.

Transdoni la kuntekston ĉe ĉi tiu voko tenas la vojon videbla kaj evitigas ŝanĝojn al nerilataj URL-legadoj. Komunigita defaŭlta kunteksto taŭgas nur kiam la aplikaĵo konscie volas tiun politikon; bibliotekoj devus konsideri ĝian pli larĝan amplekson.

Ĉi tio agordas PHP-fluojn, ne sendepende kreitan cURL-tenilon, retumilon aŭ alian procezon. Identigu la realan HTTP-transporton de pakaĵo antaŭ ol atendi, ke ĝi uzu ĉi tiun kuntekston.

Rilataj artikoloj