Upgrade to Pro — share decks privately, control downloads, hide ads and more …

あたらしいHTTPの話をしよう

 あたらしいHTTPの話をしよう

あたらしいHTTP/1.1、RFC7230-7239のざっくりしたまとめ

http://blog.hmm.jp/entry/new-http1.1-rfcs

Ippei Ogiwara

July 03, 2014
Tweet

More Decks by Ippei Ogiwara

Other Decks in Technology

Transcript

  1. 3'$ w 3'$.FTTBHF4ZOUBYBOE3PVUJOHMPXMFWFMNFTTBHF QBSTJOHBOEDPOOFDUJPONBOBHFNFOU w 3'$4FNBOUJDTBOE$POUFOUNFUIPET TUBUVTDPEFT BOEIFBEFST w 3'$$POEJUJPOBM3FRVFTUTFH

    *G.PEJpFE4JODF w 3'$3BOHF3FRVFTUTHFUUJOHQBSUJBMDPOUFOU w 3'$$BDIJOHCSPXTFSBOEJOUFSNFEJBSZDBDIFT w 3'$"VUIFOUJDBUJPOBGSBNFXPSLGPS)551 BVUIFOUJDBUJPO
  2. 3'$4FNBOUJDTBOE$POUFOU w EFGBVMUDIBSTFU *40 ͷഇࢭ w 3FGFSFS w 4BNF0SJHJOͰ͸ϦϑΝϥΛૹΔ΂͖ w

    BCPVUCMBOL͕௥ՃɻϦϑΝϥΛམͱ͍ͯ͠ΔͷͰ͸ແ͘ɺ ໌ࣔతʹଘࡏ͠ͳ͍͜ͱΛએݴ͢Δ w Ұ؏ੑͷͨΊ(&5ϦΫΤετ͕CPEZΛ࣋ͭ͜ͱΛڐՄ w     εςʔλεͷΩϟογϡΛڐՄ w $POUFOU.%ϔομͷ࡟আ
  3. 3'$<>ओʹSFpOFNFOU w 3'$$POEJUJPOBM3FRVFTUT w *G.PEJpFE4JODF౳ͷ৚݅෇͖ϦΫΤετͷఆٛ w 3'$3BOHF3FRVFTUT w 3BOHF3FRVFTUͷఆٛ w

    3'$$BDIJOH w $POUFOU$BDIFͷఆٛ w 3'$"VUIFOUJDBUJPO w ΈΜͳେ޷͖#BTJD%JHFTUೝূͳͲͷτϐοΫ
  4. 3'$"VUIFOUJDBUJPO4DIFNF3FHJTUSBUJPOT w ೝূͷछྨΛఆ͍ٛͯ͠Δ͚ͩ ! +----------------+------------+-------------------------------------+! | Authentication | Reference |

    Notes |! | Scheme Name | | |! +----------------+------------+-------------------------------------+! | Basic | [RFC2617], | |! | | Section 2 | |! | Bearer | [RFC6750] | |! | Digest | [RFC2617], | |! | | Section 3 | |! | Negotiate | [RFC4559], | This authentication scheme violates |! | | Section 3 | both HTTP semantics (being |! | | | connection-oriented) and syntax |! | | | (use of syntax incompatible with |! | | | the WWW-Authenticate and |! | | | Authorization header field syntax). |! | OAuth | [RFC5849], | |! | | Section | |! | | 3.5.1 | |! +----------------+------------+-------------------------------------+!
  5. 3'$4UBUVT$PEF 1FSNBOFOU3FEJSFDU  w ৽͍͠ϦμΠϨΫτεςʔλε w ӬଓతͳϦμΠϨΫτ࣌ʹ1045ͷ಺༰ΛϦμΠϨΫτઌʹ ૹ৴ ! !

    ! ! w ඇରԠͷϒϥ΢β͕Ͳ͏ղऍ͢Δ͔ɺ·ͨඇରԠͷϒϥ΢β ΛαʔόଆͰ൑அͰ͖Δͷ͔ɺΉ͍ͣͱ͜Ζ Ӭଓత Ұ࣌త POST͔ΒGET΁ͷϝιουมߋΛڐՄ 301 302 POST͔ΒGET΁ͷมߋΛڐՄ͠ͳ͍ 308 307
  6. YSFEJSFDUSFTQPOTFT w .PWFE1FSNBOFOUMZ߃ٱతͳϦμΠϨΫτ w 'PVOEݩʑ͸.PWFE5FNQPSBSJMZ͕ͩͬͨɺܝࣔ൘΍8JLJͳͲ Ͱ౤ߘޙʹϒϥ΢βΛଞͷ63-ʹసૹ͍ͨ͠ͱ͖ʹ΋͜ͷίʔυ͕ ࢖༻͞ΕΔΑ͏ʹͳͬͨͨΊɺ͸'PVOEʹͳΓɺ৽ͨʹ  ͕࡞੒͞Εͨɻ w

    4FF0UIFSଞΛࢀরͤΑɻϦΫΤετͨ͠Ϧιʔε͸͔֬ʹͦ ͷ63-ʹ͋Δ͕ɺଞͷϦιʔεΛ΋ͬͯϨεϙϯεͱ͢ΔΑ͏ͳ৔ ߹ʹ࢖༻͢Δɻ ܝࣔ൘ͷ౤ߘޙʹଞͷ63-ʹసૹ͍ͨ͠ͱ͖ʹ࢖Θ ΕΔ΂͖ίʔυͱͯ͠ಋೖ͞Εͨɻ  w 5FNQPSBSZ3FEJSFDUҰ࣌తͳϦμΠϨΫτɻͷຊདྷͷ࢖༻ ๏ΛվΊͯఆٛͨ͠΋ͷɻ
  7. 'PSXBSEFEϔομ w lCZ͸ϦΫΤετΛड͚ͨϓϩΩγͷ$VTUPNFS'BDJOHଆͷ ࣝผࢠ w GPS͸ϦΫΤετݩ 9''ͱಉ͡  w lIPTUz͸ϓϩΩγ͕ड͚ͨ)PTUϔομ

    w lQSPUP͸ϓϩΩγ͕ड͚ͨϓϩτίϧ ! ! ! Forwarded: for="_gazonk"! Forwarded: For="[2001:db8:cafe::17]:4711"! Forwarded: for=192.0.2.60;proto=http;by=203.0.113.43! Forwarded: for=192.0.2.43, for=198.51.100.17
  8. BEEJUJPOBMJEFOUJpFST w zVOLOPXOzࣝผࢠ w ୭͔Β͔͸஌Βͳ͍͚Ͳసૹͨ͠ͱ͍͏͜ͱΛ໌͍ࣔͨ͠ ͱ͖ʹ*1ɺϗετ໊ͷ୅ΘΓʹ࢖͏ w 0CGVTDBUFE*EFOUJpFS ΅͔ͨࣝ͠ผࢠ 

    w ಺෦*1ΞυϨεΛൿີʹ͍͚ͨ͠Ͳɺσόοά༻్ʹ 'PSXBSEFEϔομΛग़ྗ͍ͨ͠ͱ͖ʹ@ VOEFSTDPSF ͔Β ࢝·ΔJEFOUJpFSΛ࢖͑Δ
 
 Forwarded: for=_hidden, for=_SEVKISEK