Intestaturi PHP cURL permezz ta' proxy: CONNECT kontra r-risposti tad-destinazzjoni
Żomm l-intestaturi CONNECT, tal-awtentikazzjoni, tar-ridirezzjoni u tar-risposta finali separati meta trasferiment PHP cURL juża proxy.
Iġbor il-linji tal-intestatura separatament mill-ġisem tar-risposta. Trasferiment permezz ta' proxy jista' jwassal intestaturi CONNECT, awtentikazzjoni, ridirezzjoni u risposta tad-destinazzjoni f'operazzjoni waħda:
$headerLines = [];
curl_setopt($handle, CURLOPT_HEADERFUNCTION,
function ($handle, $line) use (&$headerLines) {
$headerLines[] = $line;
return strlen($line);
}
);
Dan il-callback iżomm is-sekwenza mhux maħduma tal-linji u jirritorna l-għadd ta' bytes aċċettati. Jirċievi linji sħaħ; iżda għadu ma jiġborhomx fi risposti u lanqas jagħżel l-intestaturi tas-sit web finali.
Interpreta s-sekwenza bħala blokki
Linja tal-istat HTTP tibda blokk ta' risposta, u linja vojta ttemm l-intestaturi tagħha. Ippreserva dawk il-konfini qabel ma tagħżel ir-risposta finali tad-destinazzjoni. Tentattivi ta' awtentikazzjoni intermedji u ridirezzjonijiet jistgħu kull wieħed iżidu blokki.
It-trailers jistgħu jaslu aktar tard permezz tal-callback. Żomm biżżejjed stat tal-parser biex tiddistingwihom mill-intestaturi inizjali, minflok ma tqabbad kull qasam aktar tard mar-risposta ewlenija.
Żomm jew irażżan l-evidenza tal-mina
Aqra CURLINFO_HTTP_CONNECTCODE separatament għall-istat CONNECT tal-mina HTTPS. Mina aċċettata ma tippruvax risposta ta' suċċess tas-sit web.
Jekk l-intestaturi CONNECT mhumiex meħtieġa mill-ġbir, CURLOPT_SUPPRESS_CONNECT_HEADERS jikkontrolla l-kunsinna tagħhom lill-output tal-intestaturi konfigurat u l-mogħdijiet tal-callback. Ivverifika l-appoġġ fil-libcurl u fil-build PHP marbuta. L-irażżan jissimplifika l-ġbir iżda jneħħi evidenza tal-mina fil-livell tal-intestaturi li tista' tgħin fid-dijanjożi.
Terġax tikseb il-ġisem b'offset fiss jew billi tfittex tag HTML. Id-daqsijiet tal-intestaturi jvarjaw, ir-risposti intermedji jvarjaw, u l-ġisem jista' jkun binarju jew vojt. Rapport antik ta' bug speċifiku għal rilaxx ma jiġġustifikax offset maħsub.
Żomm il-ġestjoni tal-ġisem separata, u żomm l-iżball tat-trasferiment mal-fażijiet tar-risposta osservati jekk il-ġbir jew l-analiżi jfallu. Dan jiddistingwi callback maqtugħ, data tal-applikazzjoni difettuża u skambju ta' proxy miċħud.