Ku-PHP, i-get_headers() yamukela i-stream context njengengxenye yayo yesithathu. Ku-PHP 8, ukuhlolwa kwezihloko kwe-HTTP URL kungathwala ukucushwa kwayo kwe-proxy:

$context = stream_context_create([
    'http' => [
        'proxy' => 'tcp://proxy.example.net:8080',
        'request_fulluri' => true,
        'method' => 'HEAD',
        'follow_location' => 0,
        'timeout' => 10,
    ],
]);

$headers = get_headers('http://example.net/file.zip', false, $context);
if ($headers === false) {
    throw new RuntimeException('Header request failed');
}

I-proxy iyindawo yokugcina ye-TCP yesembozo sokugeleza kwe-HTTP. Shintsha umsingathi nembobo yendawo egcwalisiwe ngomuntu ongakaqinisekiswa ovela ohlwini lwama-proxy e-HTTP kulolu hlolo lwe-HTTP lomphakathi. I-request_fulluri inikeza i-URI yendawo okuyiwa kuyo ephelele emgqeni wesicelo se-HTTP, njengoba ama-proxy amaningi adlulisayo elindele. Le context ingeyalolu cingo; ayishintshi i-context ezenzakalelayo esetshenziswa okunye ukufunda kwe-URL.

Naphezu kwegama lomsebenzi, indlela yawo ezenzakalelayo yesicelo i-GET. Indlela ecacile ye-HEAD icela iseva imethadatha yempendulo ngaphandle komzimba wempendulo ohambisanayo. Iseva ingayenqaba i-HEAD noma iyiphathise ngendlela ehlukile, ngakho ukuhlolwa kwezihloko okuphumelelayo akubona ubufakazi bokuthi ukulanda kamuva kuzophumelela.

Lapha, ukulandela ama-redirect kuvaliwe ukuze kuhlolwe impendulo yokuqala. Khona-ke isihloko se-Location nesimo se-redirect kuba yimiphumela ewusizo esikhundleni somyalelo wokuthatha enye i-URL. Uma ukuhlola kufanele kulandele ama-redirect, shintsha leyo nqubomgomo ngamabomu futhi ucabangele izihloko zempendulo ezengeziwe.

Ingxenye ye-false igcina uhlu lwezihloko olunekhodi. Sebenzisa i-true lapho ukuhlaziya okuhambisanayo kuwusizo kakhulu.

Izihloko ezihlobene