ເຊວ Rake ບໍ່ສາມາດຍົກເລີກ proxy ຂອງ Ruby ໄດ້
ປ່ຽນ ENV ຂອງ Ruby ສຳລັບວຽກຕໍ່ໄປ ຫຼື ໃຫ້ hash ສະພາບແວດລ້ອມສະເພາະລູກ ແທນການຍົກເລີກ proxy ພາຍໃນການເອີ້ນ sh ທີ່ແຍກຕ່າງຫາກ.
sh 'unset http_proxy' ປ່ຽນເຊວທີ່ເລີ່ມສຳລັບການເອີ້ນນັ້ນ. ເມື່ອມັນອອກ, ຂະບວນການ Ruby ຂອງ Rake ຍັງມີສະພາບແວດລ້ອມເດີມ, ແລະການເອີ້ນ sh ຕໍ່ມາຈະສືບທອດມັນອີກ.
ເພື່ອປ່ຽນຂະບວນການ Ruby ສຳລັບວຽກຕໍ່ໄປ:
ENV.delete('http_proxy')
ENV.delete('HTTP_PROXY')
ສິ່ງນີ້ມີຜົນຕໍ່ລູກຂະບວນການຕໍ່ໄປ ແລະ ໂຄດ Ruby ທີ່ອ່ານກຸນແຈເຫຼົ່ານັ້ນ. ມັນ ບໍ່ຕັ້ງຄ່າ terminal ທີ່ເລີ່ມ Rake ຄັ້ງທຳອິດຄືນໃໝ່.
ສຳລັບຄຳສັ່ງລູກໜຶ່ງອັນ, ໃຫ້ສະພາບແວດລ້ອມຂອງມັນໂດຍກົງ:
sh(
{ 'http_proxy' => nil, 'HTTP_PROXY' => nil },
'ruby', 'download.rb'
)
ອິນເຕີເຟສເລີ່ມຂະບວນການຂອງ Ruby ຖືຄ່າ nil ເປັນການລຶບອອກຈາກສະພາບແວດລ້ອມຂອງລູກນັ້ນ. Rake ສົ່ງລາຍການອາກິວເມັນໄປຍັງອິນເຕີເຟສນັ້ນ, ເຮັດໃຫ້ ENV ຂອງຕົນເອງບໍ່ປ່ຽນ.
ລຶບກຸນແຈທີ່ກ່ຽວຂ້ອງກັບ client ຕົວຈິງ. ການດຳເນີນການ HTTPS ອາດໃຊ້ https_proxy ນຳ, ແລະ client ບາງຕົວອ່ານ ALL_PROXY ຫຼື ໄຟລ໌ການຕັ້ງຄ່າອື່ນ. ການລຶບກຸນແຈ HTTP ພຽງອັນດຽວບໍ່ແມ່ນຄຳແນະນຳເສັ້ນທາງກົງທົ່ວໄປ.
ຮູບແບບຫຼາຍອາກິວເມັນຮັກສາອາກິວເມັນຂອງໄຟລ໌ທີ່ປະຕິບັດໄດ້ແຍກກັນ. ບໍ່ຈຳເປັນຕ້ອງສ້າງສະຕຣິງເຊວທີ່ມີຄຳສັ່ງລຶບ ແລະ URL.