ນີ້ແມ່ນຄໍາສັ່ງ nghttp ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
nghttp - ລູກຄ້າ HTTP/2
ສະຫຼຸບສັງລວມ
nghttp [ຕົວເລືອກ]... ...
ລາຍລະອຽດ
ລູກຄ້າ HTTP/2
ລະບຸ URI ເພື່ອເຂົ້າເຖິງ.
OPTIONS
- ໃນ, -- verbose
ພິມຂໍ້ມູນ debug ເຊັ່ນ: ການຮັບແລະການສົ່ງຕໍ່ຂອງກອບແລະ
ຊື່/ຄູ່ມູນຄ່າ. ການລະບຸຕົວເລືອກນີ້ຫຼາຍຄັ້ງຈະເພີ່ມຄວາມເວົ້າຫຼາຍຂື້ນ.
-n, -- null-out
ຍົກເລີກຂໍ້ມູນທີ່ດາວໂຫຼດແລ້ວ.
-ໂອ, --remote-name
ບັນທຶກຂໍ້ມູນການດາວໂຫຼດຢູ່ໃນໄດເລກະທໍລີປະຈຸບັນ. ຊື່ໄຟລ໌ແມ່ນມາຈາກ
URI. ຖ້າ URI ສິ້ນສຸດດ້ວຍ '/', 'index.html' ຖືກໃຊ້ເປັນຊື່ໄຟລ໌. ບໍ່ແມ່ນ
ປະຕິບັດແລ້ວ.
-t, --ໝົດເວລາ=
ໝົດເວລາການຮ້ອງຂໍແຕ່ລະຄັ້ງຫຼັງຈາກ . ຕັ້ງຄ່າ 0 ເພື່ອປິດການໝົດເວລາ.
-w, --window-bits=
ກໍານົດຂະຫນາດຫນ້າຕ່າງເບື້ອງຕົ້ນຂອງການສະຕຣີມເປັນ 2** -1.
-W, --connection-window-bits=
ຕັ້ງລະດັບການເຊື່ອມຕໍ່ຂະຫນາດຫນ້າຕ່າງເບື້ອງຕົ້ນເປັນ 2** -1.
-ກ, --ໄດ້-ຊັບສິນ
ດາວໂຫຼດຊັບສິນເຊັ່ນ: ແຜ່ນສະໄຕລ໌, ຮູບພາບ ແລະໄຟລ໌ສະຄຣິບທີ່ເຊື່ອມຕໍ່ຈາກ
ຊັບພະຍາກອນທີ່ດາວໂຫຼດແລ້ວ. ພຽງແຕ່ການເຊື່ອມຕໍ່ທີ່ມີຕົ້ນກໍາເນີດແມ່ນດຽວກັນກັບການເຊື່ອມໂຍງ
ຊັບພະຍາກອນຈະຖືກດາວໂຫຼດ. nghttp ບູລິມະສິດຊັບພະຍາກອນໂດຍໃຊ້ HTTP/2 ຂຶ້ນກັບ
ບູລິມະສິດໂດຍອີງໃສ່. ຄໍາສັ່ງບູລິມະສິດ, ຈາກສູງສຸດຫາຕ່ໍາສຸດ, ແມ່ນ html ຕົວຂອງມັນເອງ, css,
javascript ແລະຮູບພາບ.
- ແມ່ນແລ້ວ, --ສະຖິຕິ
ພິມສະຖິຕິ.
-H, --header=
ເພີ່ມຫົວໃສ່ການຮ້ອງຂໍ. ຕົວຢ່າງ: -H':ວິທີ: PUT'
--trailer=
ເພີ່ມສ່ວນຫົວຂອງຕົວຢ່າງຕໍ່ກັບການຮ້ອງຂໍ. ຈະຕ້ອງບໍ່ປະກອບມີສ່ວນຫົວ pseudo
ພາກສະຫນາມ (ຊື່ພາກສະຫນາມສ່ວນຫົວເລີ່ມຕົ້ນດ້ວຍ ':'). ເພື່ອສົ່ງ trailer, ຫນຶ່ງຈະຕ້ອງໃຊ້ -d
ທາງເລືອກທີ່ຈະສົ່ງຮ່າງກາຍຄໍາຮ້ອງສະຫມັກ. ຕົວຢ່າງ: -- ຕົວຢ່າງ 'foo: ບາ'.
--cert=
ໃຊ້ໄຟລ໌ໃບຢັ້ງຢືນລູກຄ້າທີ່ລະບຸ. ໄຟລ໌ຕ້ອງຢູ່ໃນຮູບແບບ PEM.
--key=
ໃຊ້ໄຟລ໌ລະຫັດສ່ວນຕົວຂອງລູກຄ້າ. ໄຟລ໌ຕ້ອງຢູ່ໃນຮູບແບບ PEM.
-d, --data=
ປະກາດ FILE ໃສ່ເຊີບເວີ. ຖ້າ '-' ຖືກໃຫ້, ຂໍ້ມູນຈະຖືກອ່ານຈາກ stdin.
-m, --multiply=
ຮ້ອງຂໍແຕ່ລະ URI ເທື່ອ. ໂດຍຄ່າເລີ່ມຕົ້ນ, URI ດຽວກັນບໍ່ໄດ້ຖືກຮ້ອງຂໍສອງຄັ້ງ. ນີ້
ທາງເລືອກປິດການໃຊ້ງານມັນເຊັ່ນດຽວກັນ.
-u, -- ການປັບປຸງ
ດໍາເນີນການຍົກລະດັບ HTTP ສໍາລັບ HTTP/2. ຕົວເລືອກນີ້ຖືກລະເລີຍຖ້າຄໍາຮ້ອງຂໍ URI ມີ
ໂຄງການ https. ຖ້າ -d ຖືກນໍາໃຊ້, ການຮ້ອງຂໍການຍົກລະດັບ HTTP ແມ່ນດໍາເນີນການກັບ OPTIONS
ວິທີການ.
-p, --ນ້ຳໜັກ=
ກໍານົດນ້ໍາຫນັກກຸ່ມບູລິມະສິດ. ຊ່ວງຄ່າທີ່ຖືກຕ້ອງແມ່ນ [1, 256], ລວມທັງ.
ມາດຕະຖານ: 16
-M, --peer-max-concurrent-streams=
ໃຊ້ ເປັນ SETTINGS_MAX_CONCURRENT_STREAMS ຄ່າຂອງຈຸດສິ້ນສຸດທາງໄກຄືກັບວ່າມັນ
ໄດ້ຮັບໃນກອບ SETTINGS.
ມາດຕະຖານ: 100
-c, --header-table-size=
ລະບຸຂະໜາດຕາຕາລາງຫົວຕົວຖອດລະຫັດ. ຖ້າຕົວເລືອກນີ້ຖືກນໍາໃຊ້ຫຼາຍຄັ້ງ, ແລະ
ຄ່າຕໍ່າສຸດໃນບັນດາຄ່າທີ່ໃຫ້, ຍົກເວັ້ນອັນສຸດທ້າຍແມ່ນຫນ້ອຍລົງຢ່າງເຂັ້ມງວດ
ຫຼາຍກວ່າຄ່າສຸດທ້າຍ, ຄ່າຕໍ່າສຸດນັ້ນຖືກຕັ້ງໄວ້ໃນ SETTINGS frame payload
ກ່ອນຄ່າສຸດທ້າຍ, ເພື່ອຈໍາລອງການປ່ຽນແປງຂະຫນາດຕາຕະລາງຫົວຫຼາຍ.
-b, --padding=
ເພີ່ມຫຼາຍທີ່ສຸດ bytes ໄປຫາ payload ກອບເປັນ padding. ລະບຸ 0 ເພື່ອປິດການໃຊ້ງານ
ແຜ່ນຮອງ.
-r, --har=
ສົ່ງອອກທຸລະກໍາ HTTP ໃນຮູບແບບ HAR. ຖ້າ '-' ຖືກໃຫ້, ຂໍ້ມູນຖືກຂຽນ
ເພື່ອ stdout.
--ສີ
ບັງຄັບໃຫ້ຜົນຜະລິດບັນທຶກສີ.
-- ສືບຕໍ່
ສົ່ງສ່ວນຫົວໃຫຍ່ເພື່ອທົດສອບ CONTINUATION.
--no-content-length
ຢ່າສົ່ງຊ່ອງຂໍ້ມູນສ່ວນຫົວຄວາມຍາວເນື້ອຫາ.
--no-dep
ຢ່າສົ່ງຄຳໃບ້ບຸລິມະສິດໂດຍອີງໃສ່ການເພິ່ງພາອາໄສໄປຫາເຊີບເວີ.
--hexdump
ສະແດງການຈະລາຈອນຂາເຂົ້າເປັນເລກຖານສິບຫົກ (ຈໍສະແດງຜົນ Canonical hex+ASCII). ຖ້າ
SSL/TLS ຖືກໃຊ້, ຂໍ້ມູນທີ່ຖອດລະຫັດຖືກໃຊ້.
--no-push
ປິດການຊຸກຍູ້ເຊີບເວີ.
--max-concurrent-streams=
ຈໍານວນການສະຕຣີມທີ່ຊຸກຍູ້ພ້ອມກັນທີ່ລູກຄ້ານີ້ຍອມຮັບ.
- ການປ່ຽນແປງ
ສະແດງຂໍ້ມູນສະບັບແລະອອກ.
-ຊ, - ຊ່ວຍ
ສະແດງການຊ່ວຍເຫຼືອນີ້ແລະອອກ.
ໄດ້ argument ເປັນຈໍານວນເຕັມແລະຫນ່ວຍທາງເລືອກ (ເຊັ່ນ: 10K ແມ່ນ 10 * 1024). ໜ່ວຍ
ແມ່ນ K, M ແລະ G (ພະລັງງານຂອງ 1024).
ໄດ້ argument ເປັນຈຳນວນເຕັມ ແລະ ຫົວໜ່ວຍທາງເລືອກ (ເຊັ່ນ: 1s ແມ່ນ 1 ວິນາທີ ແລະ 500ms.
ແມ່ນ 500 milliseconds). ຫົວໜ່ວຍແມ່ນ h, m, s ຫຼື ms (ຊົ່ວໂມງ, ນາທີ, ວິນາທີ ແລະ milliseconds,
ຕາມລໍາດັບ). ຖ້າໜ່ວຍໃດຖືກລະເວັ້ນ, ວິນາທີແມ່ນໃຊ້ເປັນຫົວໜ່ວຍ.
ແຕກຕ່າງ ອີງ PRIORITY
nghttp ສົ່ງຄໍາແນະນໍາບູລິມະສິດໄປຫາເຄື່ອງແມ່ຂ່າຍໂດຍຄ່າເລີ່ມຕົ້ນເວັ້ນເສຍແຕ່ --no-dep ຖືກນໍາໃຊ້. nghttp mimics
ວິທີທີ່ Firefox ຈ້າງງານໃນການຄຸ້ມຄອງການເພິ່ງພາອາໄສໂດຍໃຊ້ idle streams. ພວກເຮົາປະຕິບັດຕາມ
ພຶດຕິກໍາຂອງ Firefox Nightly ໃນເດືອນເມສາ, 2015, ແລະພຶດຕິກໍາຂອງ nghttp ແມ່ນຄົງທີ່ຫຼາຍແລະ
ອາດຈະແຕກຕ່າງຈາກ Firefox ໃນລາຍລະອຽດ. ແຕ່ການແຜ່ພັນລັກສະນະດຽວກັນຂອງ Firefox
ບໍ່ແມ່ນເປົ້າໝາຍຂອງພວກເຮົາ. ເປົ້າຫມາຍແມ່ນສະຫນອງວິທີທີ່ງ່າຍທີ່ຈະທົດສອບອອກບູລິມະສິດການເພິ່ງພາອາໄສໃນ
ການປະຕິບັດເຄື່ອງແມ່ຂ່າຍ.
ເມື່ອການເຊື່ອມຕໍ່ຖືກສ້າງຕັ້ງຂຶ້ນ, nghttp ສົ່ງ 5 PRIORITY frames ໄປຫາ idle stream 3, 5, 7, 9.
ແລະ 11 ເພື່ອສ້າງຂໍ້ "ສະມໍ" ໃນຕົ້ນໄມ້ທີ່ເພິ່ງພາອາໄສ:
++----+
|id=0 |
++----+
^ ^ ^
w=201 / | \ w=1
/ |
/ w=101|
+-----+ +-----+ +-----+
|id=3 | |id=5 | |id=7 |
+-----+ +-----+ +-----+
^ ^
w=1 | w=1 |
| |
++-----+ +-----+
|id=11| |id=9 |
++-----+ +-----+
ໃນຮູບຂ້າງເທິງ, id ຫມາຍຄວາມວ່າ stream ID, ແລະ w ຫມາຍຄວາມວ່ານ້ໍາ. ກະແສ 0 ແມ່ນ
ນ້ໍາທີ່ບໍ່ມີຢູ່, ແລະປະກອບເປັນຮາກຂອງຕົ້ນໄມ້. ກະແສ 7 ແລະ 9 ບໍ່ໄດ້ໃຊ້ສໍາລັບ
ໃນປັດຈຸບັນ.
URIs ທີ່ໄດ້ຮັບໃນເສັ້ນຄໍາສັ່ງແມ່ນຂຶ້ນກັບສາຍນ້ໍາ 11 ກັບນ້ໍາຫນັກທີ່ໃຫ້ຢູ່ໃນ -p ທາງເລືອກ,
ເຊິ່ງຄ່າເລີ່ມຕົ້ນເປັນ 16.
If -a ທາງເລືອກແມ່ນຖືກນໍາໃຊ້, nghttp parses ຊັບພະຍາກອນທີ່ຊີ້ໃຫ້ເຫັນໂດຍ URI ທີ່ໄດ້ຮັບໃນຄໍາສັ່ງເປັນ
html, ແລະສະກັດການເຊື່ອມຕໍ່ຊັບພະຍາກອນຈາກມັນ. ເມື່ອຮ້ອງຂໍຊັບພະຍາກອນເຫຼົ່ານັ້ນ, nghttp ໃຊ້
ການເພິ່ງພາອາໄສຕາມປະເພດຊັບພະຍາກອນຂອງມັນ.
ສໍາລັບ CSS, ແລະໄຟລ໌ Javascript ພາຍໃນອົງປະກອບ "head", ພວກເຂົາຂຶ້ນກັບ stream 3 ກັບ the
weight 2. ໄຟລ໌ Javascript ຢູ່ນອກອົງປະກອບ "head" ແມ່ນຂຶ້ນກັບ stream 5 ທີ່ມີນ້ໍາຫນັກ
2. Magages ຂຶ້ນກັບ stream 11 ກັບນ້ໍາຫນັກ 12. ຊັບພະຍາກອນອື່ນໆ (ຕົວຢ່າງ, icon)
ຂຶ້ນກັບສາຍນ້ໍາ 11 ກັບນ້ໍາຫນັກ 2.
ໃຊ້ nghttp ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net