1.
c/s: 客户端和服务端 : 例如QQ; 安全, 升级比较麻烦
b/s: 浏览器和服务端: 只需要编写服务端; 不安全
2. web资源介绍:
html: 静态资源,如果客户端请求的页面是静态的,那么服务端会直接响应给客户端
jsp/Servlet: 动态资源: 如果客户端请求的是动态的,那么服务端先转为静态然后在把静态的响应给客户端;
3. 访问web资源: 协议名://域名:端口/路径
web服务器的作用是接受客户端请求,给客户端做出响应;
4. Tomcat服务器:
①bin: 存放的是二进制直接可执行文件;
②conf: server.xml:配置整个服务器信息;
tomcatusers.xml: 存储tomcat用户文件
web.xml:部署描述符文件
context.xml:对所有应用的统一配置
③lib: tomcat的类库,里面是一大堆jar文件.
④logs:存放的是日志文件;
⑤webapps: 存放web项目的目录,其中的root项目,如果在地址栏没有给出具体的项目目录,对听的就是root项目;
⑥work: 运行时生成的文件,最终运行的文件都在这里. 运行JSP的时候,JSP翻译成servlet的代码存放的路径;
5.静态的网站:
在webapps目录下创建一个项目目录,在项目目录下创建一个html文件.
动态网站:
在webpass目录下创建一个项目目录,在项目目录下创建一个
WEB-INF目录(大写) ,创建 web.xml文件
创建静态或动态页面;
6.动态应用
完整的web应用在web-Inf目录下创建 这个目录名称必须大写,在这个目录下的东西浏览器无法直接访问,所以安全
①web.xml: 应用程序的部署描述符文件,可以在该文件中对应用进行配置,
②classes:存放class文件的目录;
③lib:存放jar包的目录;
7.理解server.xml
<server> 根元素,表示整个服务器的配置信息
①<service> :表示服务
②connerctor 表示连接
③Engine 表示引擎 Host> : <Engine>的子元素表示一个虚拟主机Context>: <Host>元素的子元素,表示一个应用
8.HTTP协议: 用来规定浏览器与服务器之间需要遵守的一个规则, 默认端口号80.
作用: 规范浏览器和服务器之间的数据传输.
1.0: 每次响应后即刻关闭了连接
1.1: 现在使用,不是每次响应就挂断,等待长时间以后才挂断.
①http协议: 超文本传输协议,通信规则 请求协议 响应协议
②请求协议:请求首行请求头信息;空行;请求体。
GET请求: 不能有请求体,有大小限制
user-agent: 告诉了用户的系统和浏览器信息;作用各个浏览器处理方式有区别
Referer:请求头可以做统计工作,也可以做防盗链,因为他包含请求来自哪个页面
If-Modified-Since: 通常和响应的头last-modified一起使用查找本地的缓存
POST请求:可以有请求体,不限制大小
Last_Modified : 与请求中的if-modified-since一起查找本地缓存
content-dispostion 文件下载的时候使用的一个头信息
location : 重定向的跳转路径
自动刷新响应头 Refresh: 3;url=http://www.itcast.cn
③响应协议:协议版本 状态码, 状态码的描述
响应码:
200:成功
404:客户端请求了不存在的资源
500:请求的资源找到了,服务端出错了
302:重定向
304:就是浏览器如果第一次请求,会200,第二次请求,对比最后修改时间,如果相同,直接从缓存中显示内容
不要缓存的响应头:
Expires: -1;
Cache-Control: no-cache;
Pragma: no-cache;
html指定响应头:
使用<meta http-equiv="" content="">来指定响应头