HTTPãããã³ã«
HTTPãããã³ã«ãšã¯ïŒ
WEBãµãŒããŒãšã¯ã©ã€ã¢ã³ã(ãã©ãŠã¶ç)ããçžäºã«éä¿¡ããçºã®ä»çµã¿
ã¯ã©ã€ã¢ã³ãããã®é²èŠ§èŠæ±(HTTPãªã¯ãšã¹ã)
WEBãµãŒããŒããã®å¿ç(HTTPã¬ã¹ãã³ã¹)
ããæãã
éä¿¡æã¯ãªã¯ãšã¹ãã¡ãã»ãŒãžãWEBãµãŒããŒã«éãã
åä¿¡æã¯ã¬ã¹ãã³ã¹ã¡ãã»ãŒãžãWEBãµãŒããŒããåãåãã
ãã©ãŠã¶ã¯ã¬ã¹ãã³ã¹ã¡ãã»ãŒãžå
ã®HTMLããŒã¿ãè§£éããŠç»é¢ã«è¡šç€ºããã
HTTPãªã¯ãšã¹ã
ã¡ãã»ãŒãžããã | ãªã¯ãšã¹ãã©ã€ã³ | ã¡ãœãã |
URI | ||
HTTPããŒãžã§ã³ | ||
ãªã¯ãšã¹ãããã | ãŠãŒã¶ãŒãšãŒãžã§ã³ã | |
ãªãã¡ã© | ||
ããŒã¿åœ¢åŒ | ||
ã¯ãã㌠| ||
ã¡ãã»ãŒãžãã㣠| ãã¹ãããŒã¿ |
(1)ãªã¯ãšã¹ãã©ã€ã³
ã¡ãœãããURIãHTTPããŒãžã§ã³
(2)ã¡ãã»ãŒãžããããŒ
æ¥ä»ãã¯ã©ã€ã¢ã³ããæ±ããããŒã¿çš®é¡ãèšèªãå§çž®æ¹åŒããœãããŠã§ã¢åç§°ããœãããŠã§ã¢ããŒãžã§ã³ãããŒã¿ã®æå¹æéçããã©ãŠã¶ã«ãã£ãŠç°ãªãã
(3)ã¡ãã»ãŒãžããã£
POSTã¡ãœããã§ããŒã¿ãéãéã®ãã©ã¡ãŒã¿ãŒç
HTTPãªã¯ãšã¹ãã©ã€ã³
ãäœãããã©ãããïŒããšããã¡ãã»ãŒãžããã¯ã©ã€ã¢ã³ããããµãŒããŒã«éä¿¡ããã
ãäœããïŒ URI
ãã©ãããïŒãïŒ ã¡ãœãã(GET/POSTç)
URLæ¬ã«çŽæ¥ã¢ãã¬ã¹ãèšå
¥ããå Žåã¯èªåçã«ãGETãåœä»€
ãã¿ã³æŒäžçã®ããã°ã©ã ãå®è¡ãããå Žåã¯ãå€ãã®å ŽåãPOSTãåœä»€ãå®è¡ãããæ§ã«ããã°ã©ã ãããŠããã
ã¡ãœãã
GET
ãµãŒããŒããããŒã¿ãååŸãã
ãã®æãã¡ãã»ãŒãžããã£ã«ã¯ããŒã¿ç¡ã
ãã©ã¡ãŒã¿ãWEBãµãŒããŒã«éãå Žåã¯URLã®æ«å°Ÿã«ä»å ãããã
(äŸ)https://office-yone.com/ïœ?prm1=100&prm2=AAA
POST
ãµãŒããŒãžããŒã¿ãæž¡ã
ãã®æãã¡ãã»ãŒãžããã£ã«ãµãŒããŒã«æž¡ãããŒã¿ãèšå®ããã
URI
ãOSIåç §ã¢ãã« ãã¬ãŒã³ããŒã·ã§ã³/ã¢ããªã±ãŒã·ã§ã³å±€/URIãåç §
HTTPããŒãžã§ã³
HTTP 1.0
HTTP 1.1
HTTP 2.0(äºå®)
HTTPãªã¯ãšã¹ãããããŒ
ãŠãŒã¶ãŒãšãŒãžã§ã³ã
(User-Agent)
ãã©ãŠã¶ã®çš®é¡ãOSã®æ
å ±ã
å€ãã®å Žåãã©ãŠã¶
ãªãã¡ã©
Referer
(â»è±èªãšããŠReferrerãæ£ãããâãçšãã)
ãªãã¡ã©äŸ(1)
ããŒãžAã®ãªã³ã¯ãã¯ãªãã¯
â
ããŒãžBãžé·ç§»
ããŒãžBãžã®HTTPãªã¯ãšã¹ã
ãªãã¡ã©ïŒããŒãžAã®URI
ãªãã¡ã©äŸ(2)
ããŒãžCã衚瀺(ç»åæã)
â
å
éšã§ç»åã®ã¿åãªã¯ãšã¹ã
ãªãã¡ã©ïŒããŒãžCã®URI
ã¯ãããŒ
Cookie
ã»ãã·ã§ã³æ
å ±ã衚ãããã¹ãããŒã¿
éå»ã§ã¯IDããã¹ã¯ãŒãã
çŸåšã§ã¯ã»ãã·ã§ã³ID
ããŒã¿åœ¢åŒ
ç»åã®çš®é¡ãèšèªãæåã³ãŒã
HTTPã¬ã¹ãã³ã¹
ã¡ãã»ãŒãžããã | ã¹ããŒã¿ã¹ã©ã€ã³ | HTTPããŒãžã§ã³ |
ã¹ããŒã¿ã¹ã³ãŒã | ||
ã¬ã¹ãã³ã¹ããã | ã³ã³ãã³ãã¿ã€ã | |
åå©çšæé | ||
ããŒã¿ã®æçµæŽæ°æ¥æ(Last-Modified)ããšã³ãã£ãã£æ å ±(ETag) | ||
ç§»åå | ||
ã¡ãã»ãŒãžãã㣠| HTMLãJSONãCGIã»WEBã¢ããªå®è¡çµæ |
(1)ã¹ããŒã¿ã¹ã©ã€ã³
HTTPããŒãžã§ã³ãã¹ããŒã¿ã¹ã³ãŒããã¬ã¹ãã³ã¹ãã¬ãŒãº(ã¹ããŒã¿ã¹ã®èª¬ææ)
(2)ã¬ã¹ãã³ã¹ããããŒ
ãªã¯ãšã¹ãã¡ãã»ãŒãžã«ãããã¡ãã»ãŒãžããããŒãšåã
(3)ã¡ãã»ãŒãžããã£
(ã¬ã¹ãã³ã¹ããã£)
HTMLæãCGIã¢ããªã±ãŒã·ã§ã³ã®åºåçµæãç»åã»æ åããŒã¿ç
HTTPã¹ããŒã¿ã¹ã³ãŒã
åé¡ | çªå· | ã¡ãã»ãŒãž | 説æ |
---|---|---|---|
æ å ± | 100 | Continue | åŠçãç¶ç¶ããŠããŸããç¶ãã®ãªã¯ãšã¹ããéä¿¡ããŠãã ããã |
101 | Switching Protocols | Upgrade ãããã§æå®ãããããã³ã«ã«å€æŽããŠåèŠæ±ããŠãã ããã | |
æå | 200 | OK | æåããŸããããªã¯ãšã¹ãåä¿¡æåãã¬ã¹ãã³ã¹éä¿¡æžã¿ |
201 | Created | Location ãããã§æå®ããå Žæã«æ°ããã³ã³ãã³ããäœæãããŸããã | |
202 | Accepted | èŠæ±ã¯åçãããŸããããã ãåŠçã¯å®äºããŠããŸããã | |
203 | Non-Authoritative Information | å¿çãããã¯ãªãªãžãã«ãµãŒããŒãè¿ãããã®ãšã¯ç°ãªããŸãããåŠçã¯æåã§ãã | |
204 | No Content | ã³ã³ãã³ãã¯ãããŸããããåŠçã¯æåããŸããã | |
205 | Reset Content | èŠæ±ãåçããã®ã§ãçŸåšã®ã³ã³ãã³ãïŒç»é¢ïŒãç Žæ£ããŠãã ãããã | |
206 | Partial Content | ã³ã³ãã³ããäžéšã®ã¿è¿åŽããŸãã | |
転é | 300 | Multiple Choices | ã³ã³ãã³ãå ¥ææ¹æ³ã«ã€ããŠè€æ°ã®éžæè¢ããããŸãã |
301 | Moved Permanently | Location ãããã§æå®ãããå¥ã®å Žæã«ç§»åããŸããã | |
302 | Found | Location ãããã§æå®ãããå¥ã®å Žæã«èŠã€ãããŸããããã¡ããèŠãŠãã ããã (ãªã¯ãšã¹ãå ãµãŒããŒã§ç§»åå ãæå®ããŠããå Žå) |
|
303 | See Other | Location ãããã§æå®ãããä»ã®å ŽæãèŠãŠãã ããã | |
304 | Not Modified | æŽæ°ãããŠããŸãããIf-Modified-Since ããããçšããå Žåã«è¿åŽãããŸãã | |
305 | Use Proxy | Location ãããã§æå®ãããããã·ã䜿çšããŠãã ããã | |
306 | (Unused) | æªäœ¿çšã | |
307 | Temporary Redirect | å¥ã®å Žæã«äžæçã«ç§»åããŠããŸãã | |
ã¯ã©ã€ã¢ã³ããšã©ãŒ | 400 | Bad Request | èŠæ±ãäžæ£ã§ãã |
401 | Unauthorized | èªèšŒãããŠããŸããã ãŠãŒã¶ãŒèªèšŒå€±æ |
|
402 | Payment Required | æ¯æããå¿ èŠã§ãã | |
403 | Forbidden | ã¢ã¯ã»ã¹ãèªããããŠããŸããã ã¢ã¯ã»ã¹çŠæ¢ |
|
404 | Not Found | èŠã€ãããŸããã ãªã¯ãšã¹ããããURIãç¡ã(ã¢ã¯ã»ã¹æš©éãç¡ã) |
|
405 | Method Not Allowed | æå®ããã¡ãœããã¯ãµããŒããããŠããŸããã | |
406 | Not Acceptable | èš±å¯ãããŠããŸããã | |
407 | Proxy Authentication Required | ãããã·èªèšŒãå¿ èŠã§ãã | |
408 | Request Timeout | ãªã¯ãšã¹ããã¿ã€ã ã¢ãŠãããŸããã | |
409 | Conflict | ãªã¯ãšã¹ããã³ã³ããªã¯ãïŒè¡çªã»ççŸïŒããŸããã | |
410 | Gone | èŠæ±ãããã³ã³ãã³ãã¯ç¡ããªã£ãŠããŸããŸããã | |
411 | Length Required | Content-Length ããããä»å ããŠèŠæ±ããŠãã ããã | |
412 | Precondition Failed | If-… ãããã§æå®ãããæ¡ä»¶ã«åèŽããŸããã§ããã | |
413 | Request Entity Too Large | èŠæ±ããããšã³ãã£ãã£ã倧ããããŸãã | |
414 | Request-URI Too Long | èŠæ±ããã URI ãé·ãããŸãã | |
415 | Unsupported Media Type | ãµããŒããããŠããªãã¡ãã£ã¢ã¿ã€ãã§ãã | |
416 | Requested Range Not Satisfiable | èŠæ±ãããã¬ã³ãžãäžæ£ã§ãã | |
417 | Expectation Failed | Expect ãããã§æå®ãããæ¡åŒµèŠæ±ã¯å€±æããŸããã | |
ãµãŒããŒãšã©ãŒ | 500 | Internal Server Error | ãµãŒããŒã§äºæããªããšã©ãŒãçºçããŸããã å éšãšã©ãŒ (CGIãšã©ãŒã.htaccessçèšå®ãã¡ã€ã«èšè¿°ãã¹) |
501 | Not Implemented | å®è£ ãããŠããŸããã | |
502 | Bad Gateway | ã²ãŒããŠã§ã€ãäžæ£ã§ãã | |
503 | Service Unavailable | ãµãŒãã¹ã¯å©çšå¯èœã§ã¯ãããŸããã ãµãŒãã¹æäŸäžå¯(ãµãŒããŒã¡ã³ããã³ã¹æãéè² è·æç) |
|
504 | Gateway Timeout | ã²ãŒããŠã§ã€ãã¿ã€ã ã¢ãŠãããŸããã | |
505 | HTTP Version Not Supported | ãã®HTTPããŒãžã§ã³ã¯ãµããŒããããŠããŸããã |
HTTPã¬ã¹ãã³ã¹ããããŒ
ã³ã³ãã³ãã¿ã€ã
(Content-Type)
ããŒã¿ãHTMLãªã®ãç»åãªã®ãããæåã³ãŒããªã©ã®æ
å ±ã
ファイル形式 | 拡張子 | MIME |
---|---|---|
テキストファイル | .txt | text/plain |
HTML | .htm,.html | text/html |
CSVファイル | .csv | text/comma-separated-values |
TSVファイル | .txt, .tsv | text/tab-separated-values |
XMLファイル | .xml | text/xml |
Microsoft Wordファイル | .doc, .docx | application/msword |
Microsoft Excelファイル | .xls, xlsx | application/msexcel |
Microsoft PowerPointファイル | .ppt, pptx | application/mspowerpoint |
PDFファイル | application/pdf | |
ビットマップファイル | .bmp | image/bmp |
GIFファイル | .gif | image/gif |
JPEGファイル | .jpg | image/jpeg |
PNGファイル.png | .png | image/png |
ZIPファイル | .zip | application/zip |
LZHファイル | .lzh | application/lha |
スタイルシートファイル | .css | text/css |
JavaScriptファイル | .js | text/javascript |
VBScriptファイル | .vbs | text/vbscript |
実行ファイル | .exe | application/octet-stream |
åå©çšæé
(Expires)
ååŸããããŒã¿ãå床ãµãŒããŒã«åãåãããªããŠããã©ãŠã¶ãåå©çšããŠè¯ãæé
ããŒã¿ã®æçµæŽæ°æ¥æ(Last-Modified)ããšã³ãã£ãã£æ å ±(ETag)
ãã€æŽæ°ããããã®ãã®æ
å ±
ãµãŒããŒäžã®ãã¡ã€ã«ã®å ŽæID
ãã¡ã€ã«ã®ãµã€ãº
æŽæ°æ¥æãªã©ããç®åºããæŽæ°ãã§ãã¯æ
å ±ã
次ååãããŒã¿ããªã¯ãšã¹ãããéã«ããããã®æ
å ±ã䜿ã£ãп޿°ãããŠãããã©ããã確èª
ç§»åå
(Location)
ãªã¯ãšã¹ããšéãå ŽæããããŒã¿ãååŸããããã«ç€ºãæç€ºã
ãªãã€ã¬ã¯ãå
URI
ã¿ã€ã ã¢ãŠã
çš®é¡ | å 容 | ã¹ããŒã¿ã¹ |
---|---|---|
ã³ãã¯ã·ã§ã³ ã¿ã€ã ã¢ãŠã |
æ¥ç¶æ | 408 |
ãªã¯ãšã¹ã ã¿ã€ã ã¢ãŠã |
408 | |
ãªãŒã ã¿ã€ã ã¢ãŠã |
èŠæ±ïœå¿çãŸã§ | |
ã»ãã·ã§ã³ ã¿ã€ã ã¢ãŠã |
åäžã»ãã·ã§ã³ãç¶æã§ããæé | |
ã²ãŒããŠã§ã€ ã¿ã€ã ã¢ãŠã |
504 |