Za cilje HTTP nastavite http_proxy z malimi črkami. curl namerno prezre HTTP_PROXY z velikimi črkami. V lupini POSIX:

http_proxy=http://127.0.0.1:8080 curl http://example.com/
https_proxy=http://127.0.0.1:8080 curl https://example.com/

Te prireditve veljajo samo za ukaz neposredno za njimi. Primer poslušajoče končne točke zamenjajte s svojim posrednikom; za primerjavo javnih končnih točk izberite kandidata s seznama posrednikov HTTP. Spremenljivka https_proxy izbira pot do ciljev HTTPS; vrednost z http:// še vedno pomeni običajni posrednik HTTP, ki lahko vzpostavi predor do cilja. PowerShell in ukazne lupine Windows uporabljajo drugačno sintakso prirejanja.

Zakaj je nevaren prav ta zapis z velikimi črkami

Okolja CGI lahko glave dohodnih zahtev pretvorijo v spremenljivke HTTP_ z velikimi črkami. Glava z imenom Proxy lahko zato postane HTTP_PROXY. Zaupanje vanjo kot v nastavitev odhodnih povezav bi podatkom zahteve omogočilo izbiro posrednika. Zahteva curl po malih črkah se izogne tej preslikavi; izjema za HTTPS in spremenljivke drugih protokolov ne velja povsem enako.

Če sprememba spremenljivke ne spremeni poti

Najprej poiščite spremenljivko za posamezni protokol, nato rezervno ALL_PROXY. Ustrezno pravilo NO_PROXY lahko obide posrednika. Pomembne so tudi različice z malimi črkami in konkurenčne definicije. Ta zanka za lupino, podobno Unixu, javlja prisotnost, ne da bi izpisala vrednosti, ki bi lahko vsebovale poverilnice:

for name in http_proxy HTTP_PROXY https_proxy HTTPS_PROXY all_proxy ALL_PROXY no_proxy NO_PROXY; do
  if printenv "$name" >/dev/null; then
    printf '%s is set\n' "$name"
  fi
done

Navedene definicije preglejte lokalno. Če se katera znova pojavi, preverite konfiguracijo zagonske lupine, storitve, IDE-ja, vsebnika ali CI-ja. Prisotnost pokaže možne vhode; ne pove, katera vrednost je prevladala.

Če želite eno zahtevo ločiti od teh izbir posrednika, navedite končno točko in prazen seznam obhodov:

curl --proxy http://127.0.0.1:8080 --noproxy '' --connect-timeout 5 --max-time 15 --verbose https://example.com/

Za dovoljeno primerjavo z neposredno povezavo:

curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/

Ti ukazi pomagajo razlikovati podedovano pot od napake povezljivosti. Preberite rezultate preizkusa posrednika po stopnjah, preden spreminjate dodatne nastavitve okolja. Pravila spremenljivk curl uporabljajte za curl; lastno izvajalno okolje aplikacije lahko posrednike odkriva in združuje drugače.

Sorodni članki