HTTP协议简介

来源:互联网 发布:邓肯数据 编辑:程序博客网 时间:2024/06/05 03:43

    • 说明
    • 本节内容概要
    • 理解URL的组成Uniform Resource Locator
    • HTTP协议是如何工作的
    • HTTP Request方法
    • HTTP Headers
      • 1 Request Headers
      • 2 Response Headers
      • 3 状态码Status Code

1. 说明

  本文系我的"Web Server & Web Technology (WSWT)系列博客之一,主要讲解Linux系统的Apache配置和使用,以及如何使用apache搭建自己的个人网站".该系列博客的总目录参见这里http://blog.csdn.net/u014303046/article/details/73694983.

2. 本节内容概要

  本文主要介绍网络工作机理。包括URL的构成元素,域名,HTTP协议等内容。

3. 理解URL的组成(Uniform Resource Locator)

  网站上每个网页都有一个独一无二的地址,我们把这个网络地址叫做URL。URL由4个基本部分组成:

  • 协议(protocol)
    指定了服务器的通信协议。
  • 服务器名(server name)
    指定了资源在哪台服务器上存储。通常客户端(如浏览器)需要对这个名字进行解析得到主机的ip地址,然后通过ip地址
  • 端口号(port number)
  • 资源id(resource identifier)

      举个例子,https://www.apache.org/foundation/getinvolved.html,在这个网址中,https指明了协议,www.apache.org是服务器名,端口号此处缺省(https协议的默认端口号是443,所以这个网址可以写成https://www.apache.org:443/foundation/getinvolved.html),/foundation/getinvolved.html指明了该网页在服务器电脑上的位置。

    服务器名可以是主机的ip。

4. HTTP协议是如何工作的?

  当你在浏览器输入地址访问网页的时候,都发生了什么呢?
  Step1: 分析URL
  浏览器首先根据URL得到使用的协议,服务器等信息.
  Step2: 发送请求
  Step3: 服务器回应
  这里写图片描述
  

5. HTTP Request方法

  GET
  GET方法用来获取服务器文档(比如一个网页),此方法只能获取服务器资源,不能更改服务器资源.
  HEAD
  和GET同,但是仅仅传输状态(status line)和被选中的header.
  POST
  POST用来向服务器发送数据.
  

  其它方法诸如以下,不再介绍:
  PUT
  DELETE
  CONNECT
  OPTIONS
  TRACE

6. HTTP Headers

  Header是HTTP协议中request & response很重要的组成部分.

6.1 Request Headers

  这里写图片描述
  这里写图片描述

6.2 Response Headers

  这里写图片描述
  这里写图片描述

6.3 状态码(Status Code)

1×× Informational
100 Continue
101 Switching Protocols
102 Processing
2×× Success
200 OK
201 Created
202 Accepted
203 Non-authoritative Information
204 No Content
205 Reset Content
206 Partial Content
207 Multi-Status
208 Already Reported
226 IM Used
3×× Redirection
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
307 Temporary Redirect
308 Permanent Redirect
4×× Client Error
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method Not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Payload Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Requested Range Not Satisfiable
417 Expectation Failed
418 I’m a teapot
421 Misdirected Request
422 Unprocessable Entity
423 Locked
424 Failed Dependency
426 Upgrade Required
428 Precondition Required
429 Too Many Requests
431 Request Header Fields Too Large
444 Connection Closed Without Response
451 Unavailable For Legal Reasons
499 Client Closed Request
5×× Server Error
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported
506 Variant Also Negotiates
507 Insufficient Storage
508 Loop Detected
510 Not Extended
511 Network Authentication Required
599 Network Connect Timeout Error
  
  

原创粉丝点击