ເປັນຫຍັງ curl ຈຶ່ງບໍ່ສົນໃຈ HTTP_PROXY
ເຂົ້າໃຈຂໍ້ຍົກເວັ້ນ HTTP_PROXY ທີ່ curl ຕັ້ງໃຈໄວ້, ຕົວແປຕາມໂປຣໂຕຄອນ, ALL_PROXY ແລະການທົດສອບພຣັອກຊີຜ່ານສະພາບແວດລ້ອມ.
ສຳລັບປາຍທາງ HTTP ໃຫ້ຕັ້ງ http_proxy ດ້ວຍຕົວພິມນ້ອຍ. curl ຕັ້ງໃຈບໍ່ສົນໃຈ HTTP_PROXY ທີ່ເປັນຕົວພິມໃຫຍ່. ໃນເຊວ 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/ການກຳນົດຄ່າເຫຼົ່ານີ້ມີຜົນສະເພາະຄຳສັ່ງທີ່ຕາມຫຼັງທັນທີ. ແທນທີ່ຢູ່ຮັບຟັງໃນຕົວຢ່າງດ້ວຍພຣັອກຊີຂອງທ່ານ; ເພື່ອປຽບທຽບຈຸດປາຍສາທາລະນະ ໃຫ້ເລືອກຈາກລາຍຊື່ພຣັອກຊີ HTTP. ຕົວແປ https_proxy ເລືອກເສັ້ນທາງສຳລັບປາຍທາງ HTTPS; ຄ່າທີ່ມີ http:// ຍັງໝາຍເຖິງພຣັອກຊີ HTTP ທຳມະດາທີ່ສາມາດສ້າງອຸໂມງໄປຫາປາຍທາງ. PowerShell ແລະເຊວຄຳສັ່ງ Windows ໃຊ້ຮູບແບບກຳນົດຄ່າຕ່າງກັນ.
ເປັນຫຍັງການຂຽນດ້ວຍຕົວພິມໃຫຍ່ນີ້ຈຶ່ງອັນຕະລາຍ
ສະພາບແວດລ້ອມ CGI ສາມາດປ່ຽນສ່ວນຫົວຂອງຄຳຮ້ອງຂໍເຂົ້າເປັນຕົວແປ HTTP_ ຕົວພິມໃຫຍ່. ດັ່ງນັ້ນ ສ່ວນຫົວຊື່ Proxy ອາດກາຍເປັນ HTTP_PROXY. ການເຊື່ອຖືມັນເປັນການຕັ້ງຄ່າການເຊື່ອມຕໍ່ອອກ ຈະເຮັດໃຫ້ຂໍ້ມູນຄຳຮ້ອງຂໍເລືອກພຣັອກຊີໄດ້. ຂໍ້ກຳນົດຕົວພິມນ້ອຍຂອງ curl ຫຼີກລ່ຽງການຈັບຄູ່ນີ້; ຂໍ້ຍົກເວັ້ນບໍ່ໄດ້ໃຊ້ຄືກັນທຸກປະການກັບ HTTPS ແລະຕົວແປໂປຣໂຕຄອນອື່ນ.
ຖ້າປ່ຽນຕົວແປແລ້ວເສັ້ນທາງບໍ່ປ່ຽນ
ຊອກຫາຕົວແປສະເພາະໂປຣໂຕຄອນກ່ອນ ແລ້ວຈຶ່ງເບິ່ງຕົວເລືອກສຳຮອງ ALL_PROXY. ກົດ NO_PROXY ທີ່ກົງກັນອາດຂ້າມພຣັອກຊີ. ຮູບແບບຕົວພິມນ້ອຍແລະນິຍາມທີ່ຂັດກັນກໍສຳຄັນ. ວົງຮອບເຊວແບບ Unix ນີ້ລາຍງານພຽງວ່າມີຕົວແປ ໂດຍບໍ່ພິມຄ່າທີ່ອາດມີຂໍ້ມູນຢືນຢັນຕົວຕົນ:
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ກວດເບິ່ງນິຍາມທີ່ລະບຸໄວ້ໃນເຄື່ອງຂອງທ່ານ. ຖ້າອັນໃດປາກົດອີກ ໃຫ້ກວດການຕັ້ງຄ່າຂອງເຊວທີ່ເປີດໂປຣເຊສ, ບໍລິການ, IDE, ຄອນເທນເນີ ຫຼື CI. ການມີຢູ່ຊີ້ເຖິງຄ່າຂາເຂົ້າທີ່ເປັນໄປໄດ້ ບໍ່ໄດ້ບອກວ່າຄ່າໃດໄດ້ຮັບບູລິມະສິດ.
ເພື່ອແຍກຄຳຮ້ອງຂໍໜຶ່ງອອກຈາກການເລືອກພຣັອກຊີເຫຼົ່ານີ້ ໃຫ້ລະບຸທັງຈຸດປາຍແລະລາຍຊື່ຂ້າມທີ່ຫວ່າງ:
curl --proxy http://127.0.0.1:8080 --noproxy '' --connect-timeout 5 --max-time 15 --verbose https://example.com/ສຳລັບປຽບທຽບການເຊື່ອມຕໍ່ໂດຍກົງ ເມື່ອໄດ້ຮັບອະນຸຍາດ:
curl --noproxy '*' --connect-timeout 5 --max-time 15 --verbose https://example.com/ຄຳສັ່ງເຫຼົ່ານີ້ຊ່ວຍແຍກເສັ້ນທາງທີ່ສືບທອດມາອອກຈາກບັນຫາການເຊື່ອມຕໍ່. ອ່ານຜົນທົດສອບພຣັອກຊີແຕ່ລະຂັ້ນ ກ່ອນປ່ຽນການຕັ້ງຄ່າສະພາບແວດລ້ອມເພີ່ມເຕີມ. ໃຊ້ກົດຕົວແປຂອງ curl ກັບ curl; ສະພາບແວດລ້ອມເຮັດວຽກຂອງແອັບເອງອາດຄົ້ນພົບແລະລວມພຣັອກຊີດ້ວຍວິທີອື່ນ.