Za obstoječi ročaj libcurl izrecno ločite seznama ciljnih in proxy glav:

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

Med prenosom ohranjajte konfigurirani ročaj in veljavne sezname žive. CURLHEADER_SEPARATE razlikuje glave, uporabljene na CONNECT, od glav, uporabljenih za zahtevo do cilja. Starejši primeri enotne politike lahko običajni seznam vstavijo v obe izmenjavi.

Pot zahtevePomen ločenih seznamov
HTTPS v običajnem tunelu CONNECTNajprej pride izmenjava s proxyjem; nato ciljne glave HTTP sledijo znotraj ciljnega TLS.
Običajno posredovanje HTTPProxy lahko prebere ciljne glave, libcurl pa lahko uporabi oba ustrezna seznama v eni posredovani zahtevi.

Usmerjevalna oznaka, namenjena samo proxyju, spada k izmenjavi s proxyjem. Pri posredovanju v čistem besedilu lahko poljubno polje po meri doseže izvor, razen če posredovalna ureditev z njim upravlja; ime možnosti ni jamstvo za zaupnost.

Za preverjanje pristnosti uporabite podprte možnosti poverilnic. Pri metapodatkih, ki jih določi operater, ugotovite, kateri skok jih porablja in ali jih je dovoljeno posredovati, namesto da geslo vstavite v splošno polje.

Ko oznaka manjka ali se zdi, da pušča, prepoznajte dejansko zahtevo, ki jo vsebuje. Povratni klic glav, ki prikazuje več izmenjav, lahko povzroči, da so pravilno ločeni seznami videti mešani.

Sorodni članki