HTTP 协议首部: image/jpeg 动态效果: Java, Applet, JRE 动态网页:
服务器端存储的文档非 html 格式, 而是编程语言开发的脚本, 脚本接受参数之后在服务器运行一次,
运行完成之后会生成 HTML 格式的文档, 把生成的文档发给客户端;
例:
web: index.php 执行过程: web --> procotol --> php (运行 index.php) index.html:
在该文件中可以用超链接引用 N 个 web 对象(URL) 动态网页: 包含静态内容和动态内容(动态内容部分才需运行)
缓存:
URL:(统一资源定位符)HTTP 报文: 请求报文, 响应报文 请求报文语法: 响应报文语法
HTTP 状态代码:
1xx: 纯信息
2xx: 成功类的信息 这一类型的状态码, 代表请求已成功被服务器接收理解并接受(200)
200 OK : 请求已成功, 请求所希望的响应头或数据体将随此响应返回出现此状态码是表示正常状态
3xx: 重定向类的信息 这类状态码代表需要客户端采取进一步的操作才能完成请求(301)
301 Moved Permanently : 被请求的资源已永久移动到新位置, 并且将来任何对此资源的引用都应该使用本响应返回的若干个 URI 之一
4xx: 客户端错误类的信息 (403,404)
403 Forbidden : 权限不够, 服务器已经理解请求, 但是拒绝执行它
404 Not Found : 请求失败, 客户端请求所希望得到的资源未被在服务器上发现出现这个错误的最有可能的原因是服务器端没有这个页面
5xx: 服务器端错误类的信息(500,502,503,504)
500 Internal Server Error: 一般来说是因为服务器端的源代码出现错误时出现
502 Bad Gateway : 作为网关或者代理工作的服务器尝试执行请求时, 从上游服务器接收到无效的响应
503 Service Unavailable : 由于临时的 (暂时性) 服务器维护或者过载, 服务器当前无法处理请求
504 Gateway Timeout : 作为网关或者代理工作的服务器尝试执行请求时, 未能及时从上游服务器收到响应
注意: 某些代理服务器在 DNS 查询超时时会返回 400 或者 500 错误
响应报文:
每个首部域都由名称 (name) 和值 (value) 组成, 中间用逗号分隔另外, 响应报文通常还有一个称作 Body 的信息主体, 即响应给客户端的内容
Web 服务器的主要操作:
1 建立连接接受或拒绝客户端连接请求;
2 接收请求通过网络读取 HTTP 请求报文;
3 处理请求解析请求报文并做出相应的动作;
4 访问资源访问请求报文中相关的资源;
5 构建响应使用正确的首部生成 HTTP 响应报文;
6 发送响应向客户端发送生成的响应报文;
7 记录日志当已经完成的 HTTP 事务记录进日志文件;\
例如: 一个页面中包含: 10 image, 3 CSS, 5html, 共 18 个资源这 18 个资源是一个一个去请求一个一个去传输的所以现在的浏览器都是多线程的
http, tcp: 三次握手, 四次断开 http/1.1: 增强了缓存的功能 长连接
来源: http://www.bubuko.com/infodetail-2546071.html