一、Web基础
1.1 域名的概述-1
■ 域名的概述
- ip地址不易记忆
■ 早期使用Hosts文件解析域名
- 主机名称重复
- 主机维护困难
■ DNS(Domain Name System 域名系统)
- 分布式
- 层次性
1.2 域名的概述-2
■ 域名空间结构
- 根域
- 顶级域
- 组织域
- 国家/地区域名
- 二级域名
- FQDN=主机名.DNS后缀
1.3 域名注册
■ 域名注册是internet中用于解决地址对应问题的一种方法
■ 遵循先申请先注册原则
■ 域名注册步骤:
1.4 网页的概念-1
■ 网页
- 纯文本格式文件
- 其编写语言为HTML
- 在用户的浏览器中被“翻译”成网页形式显示出来
■ 网站
- 由一个一个页面构成的,是多个网页的结合体
■ 主页
- 打开网站后出现的第一个网页成为网站主页(或首页)
1.5 网页的概念-2
■ 域名
- 浏览网页时输入的网址
■ HTTP
- 用来传输网页的通信协议(http:80端口
https:443端口)
■ URL - 是一种万维网寻址系统
1.6 网页的概念-3
■ HTML
- 用来编写网页的超文本标记语言
■ 超链接
- 超链接是将网站中不同网页连接起来的功能
■ 发布
- 将制作好的网页上传到服务器供用户访问的过程
1.7 HTML概述-1
■ HTML超文本标记语言
- Hyper text markup language
- 网页的“源码”
■ 浏览器:“解释和执行” HTML源码的工具
1.8 网页基本标签-1
■ 网页摘要信息的作用
- 有利于浏览器解析
- 有利于搜索引擎搜索
■
<head>
<title> 搜狐-中国最大的门户网站
</title>
</head>
<head>
<meta name="keywords">
content="挖掘机哪家强!"/>
</head>
1.9 网页基本标签-2
■ 标题标签
■ 行控制相关标签
■ 范围标签
■ 图像标签
■超链接标签
■ 特殊符号
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>第一个网页</title>
</head>
<body>
<h2 style="color:blue">静夜思</h2>
<h3>床前明月光</h3>
<h3>疑是地上霜</h3>
<h3>举头望明月</h3>
<h3>低头思故乡</h3>
<img src="xx.jpg" width="250px" high="300px" />
</body>
</html>
1.10 Web概述
■ web (world wide web)即全区广域网,也称为万维网
■ 一种分布式图形信息系统
■ 建立在Internet上的一种网络服务
1.11 Web1.0 vs Web2.0
■ Web 1.0
- 以编辑为特征,网站提供给用户的内容是编辑处理后提供的,然后用户阅读网站提供的内容。
- 这个过程是网站到用户的单向行为
■ Web 2.0
- 更注重用户的交互作用,用户近视网站内容的消费者(浏览者),也是网站内容的制造者
- 加强了网站与用户之间的互动,网站内容基于用户提供,网站的诸多功能也由用户参与建设,实现了网站与用户双向的交流与参与
- Web2.0特性
- 用户分享,以兴趣为聚合点的社群。开放的平台。活跃的用户
1.12 静态网页
■ 静态网页是标准的HTML文件
■ 扩展名是.htm、.html
- 文本、图像、声音、FLASH动画、客户端脚本和Activex控件及JAVA小程序等
■ 是网站建设的基础,早期网站一般都有静态网页制作
■ 没有后台数据库、不含程序和不可交互的网页
■ 相对更新起来比较麻烦,适用于一般更新较少的展示型网站
1.13 静态网页特点-1
■ 每个静态网页都有一个固定的URL,且URL以.htm、.html、.shtml等常见形式为后缀,而不含有“?”
■ 网页内容一经发布到网站服务器上,无论是否有用户访问,每个静态网页都是保存在网站服务器上的,也就是说,静态网页是实实在在保存在服务器上的文件,每个网页都是一个独立的文件
■ 静态网友的内容相对稳定,因此容易被搜索引擎检索
1.14 静态网页特点-2
■ 静态网页没有数据库的支持,在网站制作和维护方面工作量较大,因此当网站信息量很大时完全依靠静态网页制作方式比较困难
■ 静态网页的交互性较差,在功能方面有较大的限制
■ 页面浏览速度迅速,过程无需连接数据库,开启页面速度快于动态页面
1.15 动态网页
■ 网页URL不固定,能通过后台与用户交互
■ 在动态网页网址中有一个标志性的符号——“?”
■ 常用的语言有PHP、JSP、Python、Ruby等
1.16 动态网页的特点
■ 交互性
- 即网页会根据用户的要求和选择而动态改变和响应,将浏览器作为客户端界面,这将是今后WEB发展的大势所趋
■ 自动更新
- 无须手动地更新HTML文档,便会自动生成新的页面,可以大大节省工作量
■ 因时因人而变
- 当不同的时间,不同的人访问同一网址时会产生不同的页面
二、HTTP协议
2.1 HTTP协议概述
■ HTTP协议是互联网上应用最为广泛的一种网络协议,设计这个协议的目的是为了发布和接受web服务器上的HTML页面。
■ HTTP协议的版本
- HTTP 0.9
- HTTP 1.0
- HTTP 1.1
- HTTP 2.0
2.2 HTTP方法-1
■ HTTP支持几种不同的请求命令,这些命令被称为HTTP方法(HTTP method)
■ 每条HTTP请求报文都包含一个方法,败诉服务器要执行什么动作
- 获取一个Web页面
- 运行一个网关程序
- 删除一个文件等
2.3 HTTP方法-2
■ HTTP协议有多种获得web资源的方法
■ 常用的方法:GET和POST
HTTP方法 | 描述 |
---|---|
GET | 请求获取Request-URI所标识的资源 |
PUT | 请求服务器存储一个资源,并用Request-URI作为其标识 |
DELETE | 请求服务器删除Request-URI所标识的资源 |
POST | 在Request-URI所标识的资源后附加新的数据 |
HEAD | 请求获取由Request-URI所标识的资源的响应消息报头 |
2.4 GET方法
■ GET方法:从指定的服务器上获得数据
- get请求能被缓存
- get请求会保存在浏览器的浏览记录里
- get请求有长度的限制
- 主要用于获取数据
- 查询的字符串会显示在URL中,不安全
2.5 POST方法
■ POST方法:提交数据给制定法服务器处理
- POST请求不能被缓存
- post请求不会保存在浏览器的浏览记录里
- post请求没有长度限制
- 查询的字符串不会显示在URL中,比较安全
2.6 HTTP状态码
■ 当使用浏览器访问某一个URL,会根据请求URL返回状态码
■ 通常正常的状态码为2xx,3xx(如200)
■ 如果出现异常会返回4xx,5xx(如404)
- 当使用浏览器访问某一个URL,会根据请求URL返回状态码
- 通常正常的状态码为2xx,3xx(如200)
- 如果出现异常会返回4xx,5xx(如404)
状态码首位 | 已定义范围 | 分类 |
---|---|---|
1xx | 100-101 | 信息提示 |
2xx | 200-206 | 成功 |
3xx | 300-305 | 重定向 |
4xx | 400-415 | 客户端错误 |
5xx | 500-505 | 服务器错误 |
2.7 生产环境常见的HTTP状态码
消息 | 描述 |
---|---|
200 OK | 请求成功(其后是对GET和POST请求的应答文档) |
301 Moved Permanently | 请求的永久页面跳转 |
403 Forbidden | 禁止访问该页面 |
404 Not Found | 服务器无法找到被请求的页面 |
500 Internal Server Error | 内部服务器错误 |
502 Bad Gateway | 无效网关 |
503 Service Unavailable | 当前服务不可用 |
504 Gateway Timeout | 网关请求超时 |
2.8 HTTP协议请求流程分析
2.9 HTTP请求消息报文格式
■ HTTP请求消息报文格式包括:请求行、请求头、请求体
1 Get /mattmarg/ HTP/1.1请求目录
2 User-Agent:Mozilla/2.0(Macintosh;I;PPC)浏览器标识
3 Accept:text/html;* / *
4 Cookie:name = value
5 Referer:http://www.XXX.com/a.html
2.10 HTTP请求消息报文格式
■ HTTP请求消息报文格式包括:状态行、响应头、响应体
- 01 HTTP/1.1 200 OK
- 02 Server: Microsoft-IIS/5.1
- …
- 06 Accept-Ranges:bytes
- 07 Last-Modified: Wed, 02 Jul 2008 01:01:26 - GMT
- 08 ETag: “0f71527dfdbc81:ade”
- 09 Content-Length: 46
- 10
- 11 < html >< head >< /head >< body >adfasfa< /body >< /html >
2.11 HTTP请求消息报文格式
■ HTTP请求消息报文格式包括:状态行、响应头、响应体