一,HTTP协议-URL (应用层协议)
schema://host[:port]/path[?query-string] [#anchor]
参数说明:
scheme | 指定低层使用的协议 (例如: http https ftp) |
---|---|
host | 服务器的ip地址或者域名 |
port | 服务器端口号: http–80 https–443 ftp–20,21,22,23 |
path | 访问资源的路径 |
query-string | 发送给http服务器的数据 |
anchor | 锚 |
二,HTTP协议-请求:
0, 组成格式:请求行、消息报头、请求正文
1, 请求行:
格式如下 | Method Request-URI HTTP-Version CRLF |
---|---|
举例 | GET /HTTP/1.1 CRLF |
2, 请求方法:
GET | 请求获取Request-URI所标识的资源 |
---|---|
POST | 在Request-URI所标识的资源后附加新的数据 |
HEAD | 请求获取由Request-URI所标识的资源的响应消息报头 |
PUT | 请求服务器存储一个资源,并用Request-URI作为其标识 |
DELETE | 请求服务器删除Request-URI所标识的资源 |
OPTIONS | q请求查询服务器的性能,或者查询与资源相关的选项与需求 |
3, 状态行:
HTTP-Version Status-Code Reason-Phrase CRLF |
---|
HTTP/1.1 200 OK # 最新:HTTP/2.0 ; HTTP/1.1使用最为广泛,现在是主流,还有HTTP/1.0 (很少用) |
4, 常用状态码:
1xx | 信息提示 |
---|---|
2xx | 成功,服务器成功地接受了客户端请求 |
3xx | 重定向 |
4xx | 客户端错误 |
5xx | f服务器错误 |
200 ok | 客户端请求成功 |
201 CREATED | 新建或者修改数据成功 |
204 NO CONTENT | 删除数据成功 |
400 Bad Request | 客户端请求有语法错误,不能被服务器所理解 |
401 Unauthorized | 服务器收到请求,但是拒绝提供服务 |
403 Forbidden | 访问被禁止而造成的 |
404 NOT Found | 请求资源不存在 |
422 Unprocesable Entity | 当创建一个对象时,发生一个验证错误 |
500 Internal Server Error | 服务器发生不可预期的错误 |
503 Server Unavailable | 服务器当前不能处理客户端的请求 |
调试工具:Restlet Client : chrome-extension://aejoelaoggembcahagimdiliamlcdmfm/restlet_client.html
1,nginx resolver 用来配置DNS服务器
2,linux的host在 /etc/hosts
3, uri : http://nginx.org/en/download.html
协议名: http
主机名: nginx.org
路径:/en/download.html
3,HttpOnly : 如果您在cookie中设置了HttpOnly属性,
那么通过js脚本将无法读取到cookie信息,这样能有效的防止XSS攻击