1.服务器–>
硬件:
就是配置高的电脑
软件:
服务器就是一个软件,任何电脑只需要安装了服务器软件,然后该电脑的指定目录下的资源就能提供对外访问的资源.
2.web服务器:(软件)
1)web就是网页的意思
网页还可以承载 css js 图片 音视频文件——>web资源
2)web网页资源分类:
(1)静态资源:
指web页面中供人们浏览的始终不变的数据:HTML,CSS,JS,图片,音频,视频;
(2)动态资源:
指web页面中供人们浏览的由程序产生的数据,不同时间点访问web页面看到的内容各不相同:天气,微博热门等;
这些数据由程序生成,JSP/Servlet,ASP,PHP等技术都可以完成.
动态资源浏览器访问的结果是变化的,数据都是由程序读取数据库,xml等文件生成的数据.
会随着访问人的不同或者时间不同发生改变
构成技术:
做静态资源:
html css js img
做动态资源:
java–servlet jsp
3)WEB服务器:
-顾名思义就是发布网页的服务器程序:
软件名字 产商 特点
weblogic oracle 大型的收费支持所有javaee规范的web服务器
websphere ibm 大型的收费支持所有javaee规范的web服务器
tomcat apache自由软件基金会 中型免费的开源的支持servlet和jsp规范的web服务器
4)javaee规范------------->java官方定义的为了适应java企业级开发而定制的一套规范
jdbc xml servlet jsp jms rmi
3.tomcat服务器:
1)下载
tomcat官方下载:http://tomcat.apache.org/
2)安装
解压缩,免安装
3)启动(若报错,请看第 5).配置注意事项:)
进入tomcat家目录 双击startup.bat
通过浏览器访问
url地址写法:
协议名://域名(ip地址):端口号/资源路径
http://localhost:8080/
4)关闭
进入tomcat家目录 双击shutdown.bat
命令行窗口
5)配置注意事项
报错内容可通过查询tomcat目录下的logs目录中Catalina.当前系统年月日.log文件查看
(1).出现闪退问题 检查 jdk—->JAVA_HOME
(2).端口占用问题(在dos窗口中输入 netstat -nao 查看当前端口占用情况)
修改端口号:
到tomcat家目录 conf下 找server.xml
找这个标签
端口号:
1-1024:系统要用
1025~65535:自己用
注意:80端口是操作系统预留给web服务器用的
如果改为80端口以后 访问地址:
协议名://域名(ip地址):端口号/资源路径
http://localhost:80/资源路径
80端口号也是http协议默认端口号,可以省略不写
http://localhost/资源路径
希望大家端口改成80
6)目录结构
bin:可执行文件
conf:配置文件 web.xml–项目部署描述配置文件 server.xml –服务器端口配置,服务器自身配置文件
lib:存放是tomcat服务器运行依赖的jar包
logs:日志文件(报错查询)
temp:临时目录
webapps:web applications 将写好项目 放在这个目录—>重要
work:Tomcat将JSP生成的Servlet源文件和字节码文件放到这个目录下
7)项目放在这webapps目录
协议名://域名(ip地址):端口号/项目名/资源名字
http://localhost/test/1.html
4.web项目要求:
第一个起名叫myweb
一个文件夹叫做项目名:
myweb
|—直接存放资源文件 比如html css 图片 建议 创建子文件 分开资源
|—WEB-INF文件夹 是不允许直接访问
|—classes:一般用来存在自己写java代码编译好class
|—lib:存放 这个项目依赖的jar包
|—web.xml:项目核心配置文件
5.http协议:
1) 协议,网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。
如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。
三要素:语法、语义、时序。
2) HTTP是一个客户端和服务器端请求和应答的标准(TCP)
一次网络交互过程中:
一次请求一次响应
先有的请求后有响应
http协议规定了请求和响应的格式要求
3)请求格式:
请求行 请求头 请求体
(1)请求行 就是请求内容的第一行
格式
请求方式 资源路径 协议/版本
例子:
GET /1.html HTTP/1.1
请求方式
get
post
协议/版本:
1.0:每次浏览器发请求的时候 浏览器创建socket连接 然后使用该连接发送请求 请求完毕以后 丢弃该socket
1.1:每次浏览器发请求的时候 浏览器创建socket连接 然后使用该连接发送请求 请求完毕以后
不丢弃该底层连接 保留一段时间 连接复用 效率高点
(2)请求头 : key/value 每一个头 站一行
请求行结束后 下一行
Accept: text/html,image/ --支持数据类型
Accept-Charset: ISO-8859-1 --字符集
Accept-Encoding: gzip --支持压缩
Accept-Language:zh-cn --语言环境
Host: www.itcast.cn:80 --访问主机
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT --缓存文件的最后修改时间
Referer: http://www.itcast.com/index.jsp --来自哪个页面、防盗链
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0) 客户端信息
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36
Mozilla/5.0 (Windows NT 10.0; …) Gecko/20100101 Firefox/58.0
Cookie:
Connection: close/Keep-Alive --链接状态
记这俩:
Referer:跳转来源
User-Agent:浏览器信息
(3)请求体:是在请求头结束后 隔一行 才是请求 体 放置的就是参数
但是get请求体 没有请求体
post请求 才会有请求体
4)响应格式:
响应行 响应头 响应体
(1)响应行:响应的第一行
格式: 协议/版本 状态码 状态码说明
例子: HTTP/1.1 200 OK
状态码:指的是该次响应的概述
1xx:服务器接收到请求了,正在准备数据
2xx:代表的是成功响应
200 此次成功
3xx:代表的是客户端需要进一步操作才能获取资源
304:缓存
302:重定向
4xx:客户端错误
404
5xx:服务器端错误
500
状态码说明:ok
(2)响应头:
响应行结束后 键值对
Location: http://www.it315.org/index.jsp--跳转方向
Server:apache tomcat --服务器型号
Content-Encoding: gzip --数据压缩
Content-Length: 80 --数据长度
Content-Language: zh-cn --语言环境
Content-Type: text/html; charset=GB2312 --数据类型
text/html xml java css image/png
Last-Modified: Tue, 11 Jul 2000 18:23:51 GMT--最后修改时间
Refresh: 1;url=http://www.it315.org--定时刷新
Content-Disposition: attachment; filename=aaa.zip--下载文件
Set-Cookie:SS=Q0=5Lb_nQ; path=/search
Expires: -1 --缓存
Cache-Control: no-cache --缓存
Pragma: no-cache --缓存
Connection: close/Keep-Alive --连接
Location 重定向
Content-Type:代表的是返回的数据类型
(3)响应体:
就是请求想要的东西
存放的就是响应的正文
在响应头结束后 隔一行的内容
Accept-Charset: ISO-8859-1 --字符集
Accept-Encoding: gzip --支持压缩
Accept-Language:zh-cn --语言环境
Host: www.itcast.cn:80 --访问主机
If-Modified-Since: Tue, 11 Jul 2000 18:23:51 GMT--缓存文件的最后修改时间
Referer: http://www.itcast.com/index.jsp --来自哪个页面、防盗链
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 5.0)
Cookie:
Connection: close/Keep-Alive --链接状态
请求体:
get请求没有请求体
post请求才有请求体
在请求头结束后 隔一行就是请求体
post请求 参数放在请求体里