Katika PHP, get_headers() hukubali muktadha wa mtiririko kama hoja yake ya tatu. Kwenye PHP 8, ukaguzi wa vichwa kwa URL ya HTTP unaweza kubeba usanidi wake wa proksi:

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

Proksi ni kituo cha TCP cha kifuniko cha mtiririko wa HTTP. Badilisha mwenyeji na bandari ya kishika nafasi kwa mgombea asiye na uthibitisho kutoka orodha ya proksi za HTTP kwa ukaguzi huu wa umma wa HTTP. request_fulluri hutoa URI kamili ya lengo katika mstari wa ombi la HTTP, kama proksi nyingi zinazopeleka zinavyotarajia. Muktadha huu ni wa mwito huu; haubadilishi muktadha chaguo-msingi unaotumiwa na usomaji mwingine wa URL.

Licha ya jina la kitendakazi, mbinu yake chaguo-msingi ya ombi ni GET. Mbinu dhahiri ya HEAD humwomba seva metadata ya jibu bila mwili wa jibu unaolingana. Seva inaweza kukataa HEAD au kuishughulikia kwa njia tofauti, kwa hivyo ukaguzi wa vichwa unaofanikiwa si uthibitisho kwamba upakuaji wa baadaye utafanikiwa.

Hapa, ufuatiliaji wa uelekezaji upya umezimwa ili kukagua jibu la kwanza. Kisha kichwa cha Location na hali ya uelekezaji upya ni matokeo muhimu badala ya maagizo ya kuleta URL nyingine. Ikiwa ukaguzi unapaswa kufuata uelekezaji upya, badilisha sera hiyo kwa kusudi na uzingatie vichwa vya jibu vya ziada.

Hoja ya false huhifadhi safu ya vichwa iliyoorodheshwa. Tumia true wakati uchanganuzi wa uhusiano unafaa zaidi.

Makala zinazohusiana