Esamam libcurl apdorojimo objektui aiškiai atskirkite paskirties ir tarpinio serverio antraščių sąrašus:

curl_easy_setopt(handle, CURLOPT_HEADEROPT, (long)CURLHEADER_SEPARATE);
curl_easy_setopt(handle, CURLOPT_PROXYHEADER, proxy_headers);
curl_easy_setopt(handle, CURLOPT_HTTPHEADER, origin_headers);

Perdavimo metu palaikykite sukonfigūruotą objektą ir galiojančius sąrašus gyvus. CURLHEADER_SEPARATE atskiria antraštes, naudojamas su CONNECT, nuo antraščių, naudojamų paskirties užklausai. Senesni vieningos politikos pavyzdžiai gali įdėti įprastą sąrašą į abu mainus.

Užklausos keliasAtskirų sąrašų reikšmė
HTTPS įprastame CONNECT tunelyjePirmiausia vyksta mainai su tarpiniu serveriu; tada paskirties HTTP antraštės seka paskirties TLS viduje.
Įprastas HTTP perdavimasTarpinis serveris gali skaityti paskirties antraštes, o libcurl gali naudoti abu taikomus sąrašus vienoje persiųstoje užklausoje.

Maršruto žymė, skirta tik tarpiniam serveriui, priklauso mainams su tarpiniu serveriu. Perduodant atviru tekstu, savavališkas pasirinktinis laukas gali pasiekti šaltinį, nebent perdavimo tvarka jį apdoroja; parinkties pavadinimas nėra konfidencialumo garantija.

Autentifikacijai naudokite palaikomas prisijungimo duomenų parinktis. Operatoriaus apibrėžtiems metaduomenims nustatykite, kuris šuolis juos naudoja ir ar juos galima persiųsti, o ne dėti slaptažodį į bendrą lauką.

Kai žymės trūksta arba atrodo, kad ji nuteka, nustatykite tikrąją užklausą, kurioje ji yra. Antraščių atgalinis iškvietimas, rodantis kelis mainus, gali sukelti įspūdį, kad teisingai atskirti sąrašai sumaišyti.

Susiję straipsniai