TCP/IP参考模型
层级 数据形式 主要功能 协议(只标注较主要)
应用层 数据段 文件传输、邮件、文件服务 FTP、HTTP、DNS
传输层 数据包 提供端对端的接口 TCP、UDP
网络层 数据帧 为数据包传输提供路由 IP
数据链路层 比特流 以二进制形式在物理某体上传输电流 ARP
----------------------------------------------------------------------------------------------------------------------------
HTTP(该协议主要在C/S架构中使用)---超文本传输协议
客户端发起“请求报文”
URL(Uniform Resource Locator)
Protocol://HOST:port/path/to/file
客户端请求分为静态页面和动态
静态页面由apache/nginx等直接解释即可。
动态网页,服务器端的存储文档非HTML格式,而是编程语言开发的脚本,脚本接受参数之后在服务器运行一次,运行完成之后生产HTML格式的文档,把生产的文档发给客户端。一般使用到php、tomcat等
服务端回应“响应报文”(在服务端接受客户端请求的前提下)
web服务器的主要操作:
1、建立连接--接受或拒绝客户端连接请求;
2、接受请求--通过网络读取HTTP请求报文;
3、处理请求--解析请求报文并做出相应的动作;
4、访问资源--访问请求报文中的相关的资源;
5、构建响应--使用正确的首部生成HTTP相应报文;
6、发送响应--向客户端发送生成的响应报文;
7、记录日志--将已经完成的HTTP事务记录日志文件;
HTTP请求返回的状态代码:
1xx: 纯信息
2xx: “成功"类的信息(200、201、202)
3xx: 重定向类的信息(301、302、304)
4xx: 客户端错误类的信息(404)
5xx: 服务器端错误类的信息(500、502、503)
常见状态代码、状态描述、说明:
200 OK //客户端请求成功
400 Bad Request //客户端请求有语法错误,不能被服务器所理解
401 Unauthorized //请求未经授权,这个状态代码必须和WWW-Authenticate报头域一起使用
403 Forbidden //服务器收到请求,但是拒绝提供服务
404 Not Found //请求资源不存在,eg:输入了错误的URL
500 Internal Serv