sh 'unset http_proxy' breytir skelfunni sem er ræst fyrir það kall. Þegar hún lýkur hefur Ruby-ferlið í Rake enn upprunalegt umhverfi sitt, og seinna sh-kall erfir það aftur.

Til að breyta Ruby-ferlinu fyrir frekari vinnu:

ENV.delete('http_proxy')
ENV.delete('HTTP_PROXY')

Það hefur áhrif á seinna börn og Ruby-kóða sem les þessa lykla. Það stillir ekki aftur þá skjáhermi sem ræsti Rake upphaflega.

Fyrir eina barnskipun skaltu gefa umhverfi hennar beint:

sh(
  { 'http_proxy' => nil, 'HTTP_PROXY' => nil },
  'ruby', 'download.rb'
)

Ferlaræsingarviðmót Ruby meðhöndlar nil-gildi sem fjarlægingar úr umhverfi þess barns. Rake sendir frumbreytulistann til þess viðmóts og lætur eigið ENV óbreytt.

Fjarlægðu lyklana sem skipta máli fyrir raunverulega biðlarann. HTTPS-aðgerð getur líka notað https_proxy, og sumir biðlarar skoða ALL_PROXY eða aðra stillingarskrá. Að fjarlægja einn HTTP-lykil er ekki almenn leiðsögn um beina leið.

Formið með mörgum frumbreytum heldur frumbreytum keyrsluskrárinnar aðskildum. Það er ekki þörf á að byggja skelfustreng sem inniheldur fjarlægingarskipun og URL.

Tengdir greinar