Web服务器之HTTP协议与Tomcat服务器

常见网络协议

1、在网络中传递信息都是以【二进制】形式存在的。
2、接收方【浏览器/服务器】在接收信息后,要做第一件事就是将二进制数据进行编译,成为文字、图片、视频、命令等。
3、传递信息数据量往往比较巨大,导致接收方很难在一组连续二进制得到对应数据。
4、网络协议包一组有规律二进制数据,在这组数据存在了固定空间每一个空间专门存放特定信息,这样接收方在接收网络协议包之后就可以到固定空间得到对应信息,网络协议包出现极大降低了接收方对接收二进制数据编译难度。
5、常见网络协议包有:FTP网络协议包、Http网络协议包。

Http网络协议包

在基于B/S结构下互联网通信过程中,所有在网络中传递信息都是保存在Http网络协议包
分类:Http请求协议包、Http响应协议包。

Http请求协议包

1、在浏览器准备发送请求时,负责创建一个Http请求协议包。
2、浏览器将请求信息以二进制形式保存在Http请求协议包各个空间。
3、由浏览器负责将Http请求协议包推送到指定服务端计算机。
4、Http请求协议包内部空间:

1.按照自上而下划分,分为4个空间
2.空间划分:

请求行:[
url:请求地址(http://192.168.100.2:8080/index.html)
method:请求方式(POST/GET)
]

请求头:[
请求参数信息【GET】
]

空白行:[
没有任何内容,起到隔离作用
]

请求体:[
请求参数信息【POST】
]

在这里插入图片描述

Http响应协议包

1、Http服务器在定位到被访问的资源文件之后,负责创建一个Http响应协议包。
2、Http服务器将定位文件内容或则文件命令以二进制形式写入到Http响应协议包各个空间。
3、由Http服务器负责将Http响应协议包推送回发起请求的浏览器上。
4、Http响应协议包内部结构:

1.按照自上而下划分,分为4个空间
2.空间划分:

状态行:[
Http状态码
]

响应头:[
content-type: 指定浏览器采用对应编译器
对响应体二进制数据进行解析
]

空白行:[
没有任何内容,起到隔离作用
]

响应体:[
可能被访问静态资源文件内容
可能被访问的静态资源文件命令
可能被访问的动态资源文件运行结果
]

在这里插入图片描述

Http服务器

1、Http服务器的行为与Http协议相关。
2、接收来自浏览器发送的Http请求协议包,并自动对其内容进行解析。
3、解析后,自动定位被访问的文件,并将定位的文件内容写到Http响应协议包中。
4、最后,将Http响应协议包推送到发起请求的浏览器上。
在这里插入图片描述

Http服务器分类
  • JBOSS
    由JBOSS公司研发的基于J2EE的开放源代码的应用服务器,可以在任何商业应用中免费试用。支持EJB1.1、EJB2.0和EJB3的规范,但核心业务不包括支持Servlet/JSP的Web容器,一般与Tomcat或Jetty绑定使用
  • Glassfish
    由SUN开发的一个免费开源的基于J2EE应用服务器,具有轻便的Web容器的所有优点,和Tomcat一样都是优秀的Servlet容器,在静态文件传输方面的性能比Tomcat强得多,未来可能替代Tomcat服务器
  • Jetty
    由Java技术开发的Http服务器,主要应用于公有云分布式环境中,比Tomcat更节省资源和灵活,未来可能替代Tomcat服务器
  • Websphere
    由IBM公司研发等额一个Http服务器,目前主要应用于电子商务应用领域。WebSphere可以创建四案子商务站点,把应用扩张到联合的移动设备,整合已有的应用并提供自动业务服务。主要安装在LINUX系统中。
  • Tomcat
    是Apache软件基金会的一个核心项目,由Apache、SUN共同开发而成。技术先进,性能稳定,而且免费,是目前最流行的Http服务器。属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的情况下被普遍使用,是开发和调试JSP程序的首选。

Tomcat服务器

Tomcat配置

除了JAVA_HOME和JRE_HOME的配置外,部分windows系统要求用户指定tomcat安装地址(配置CATALINA_HOME):
CATALINA_HOME通知windows系统tomcat装在哪里,例:CATALINA_ HOME: D:apache-tomcat-9.0.22

启动与关闭

在安装位置的bin下输入cmd:
启动:startup
关闭:shutdown

Tomcat内部工作文件的作用

bin:管理命令的中心。
conf:核心配置文件,其中server.xml是核心配置文件。
lib:支持Tomcat软件运行的jar包,其中还有软件技术包,如Servlet、jsp。
log:运行过程中的日志信息。
temp:临时目录(文件)。
webapps:Tomcat共享目录,单独文件不能共享,必须放到文件夹中。(收到请求查找资源文件的默认位置)
work:Tomcat的运行目录(工作空间),jsp所产生的临时文件就存在这里。(jsp编辑为java文件,再编译为class文件,new对象调方法)

模拟互联网通信

1、在Tomacat安装地址的webapps下创建一个网站webApp。
2、将一个静态资源文件添加到该文件夹下。
3、启动Tomcat(最好先关一次,再开,防止之前没有关闭),弹出的窗口不要最小化也不要关闭。
4、启动浏览器,命令浏览器向Tomcat索要静态资源文件
URL格式:网络协议包://服务器端计算机ip地址:http服务器端口号/网站名/资源文件名称
http://localhost:8080/webApp/570.jpg
5、输入URL后:
在这里插入图片描述

IDEA创建网站

1、在Application Server中导入Tomcat服务器。
2、自定义Tomcat开关。
3、新建模块选择Java企业级应用Web Application。
4、在webWEB-INF文件夹下自建文件夹lib(WEB-INF下只能放jar包和配置文件),项目结构模块中的Dependcies中添加额外的jar包。
5、自定义的开关Deployment发布,Artifact写好的网站,起好别名发布。
在这里插入图片描述
这里的必须加上。
6、点击开关调试网站。

网站内部结构

在这里插入图片描述

原文地址:https://www.cnblogs.com/yu011/p/13686030.html