最近学校的课程在学习Spring框架,接触到了Tomcat,这一篇就来浅析一哈Tomcat的安装及使用
目录
1.Tomcat
1.1 Web服务器 & Web应用服务器
1.2 Tomcat
2.官方下载
2.1 下载安装步骤
2.2 版本匹配看这里:
2.3 环境配置
2.4 运行程序
2.5 可能的问题
3.目录解析及运行
4.网页的发布
首先来明晰一下Web服务器和Web应用服务器:
先来看Web服务器:
Web服务器,是指一台在互联网上具有独立IP地址的高性能计算机,可以向互联网上的用户提供“WWW(万维网)、Email(电子邮件)和FTP(文件传输)”等各种互联网服务。(就是我们通常理解的服务器的意思,只不过是Web服务器)
根据Web服务器提供的服务类型的不同,Web服务器又可以分为Http服务器,Email服务器和FTP服务器等
那么什么又是Web应用服务器呢?
一般的Web服务器只提供页面浏览,文件下载和邮件等服务,如果要产生一些动态的响应,Web服务器一般不会自己处理,而是会委托给一些其它的程序例如JSP(JavaServer Pages)脚本,servlets和ASP(Active Server Pages)等脚本。
这些能处理动态响应的服务器就称为应用服务器
唔……简单理解
所以为什么说Tomcat是Web应用程序呢?
因为Tomcat最主要的就是被当作Servlet容器来使用,作为一个应用服务器来处理动态请求。
Servelet又是干什么的呢:简单理解就是用于接收和处理用户请求
【ps】其实Tomcat也有Web服务的功能,但因为它对静态资源的处理能力要比Apache或者Nginx这类的Web服务器差很多,所以我们经常将Apache和Tomcat组合使用,Apache作为Web服务器处理静态资源的请求,Tomcat充当Servlet容器来处理动态请求。
所以Tomcat到底是用来干什么的呢?
- 对于我们编写的JavaWeb程序,自己是不能独立运行的,必须依托于Web容器中才能运行,Tomcat就是这样一个Web容器。
- Tomcat最主要的就是被当作Servlet容器来使用(Servelet:简单理解就是用于接收和处理用户请求)
- 简单来说,就是我们知道:我们在自己电脑上编写一个html前端页面,只能在自己电脑上看到,别人是无法访问我们的页面的,而Tomcat就是提供能够让别人也访问到你的网页的一个程序;
进入官方网站:Apache Tomcat® - Welcome!
点击左侧download下方相应版本进入:
可以选择下载zip压缩包,也可以选择安装包版本,直接安装在电脑上 ,我这里下载的是版本10的.zip压缩包
【注意事项】不同版本的Tomcat匹配不同版本的jdk,注意选择下载版本
(1)首先是java环境配置,如果安装过eclipse进行过java环境配置,这里无需再配置
(2)Tomcat环境配置:
变量值就是文件的保存位置:
再修改Path变量,在Path变量中添加:
;%CATALINA_HOME%\lib;%CATALINA_HOME%\bin;
bin目录下:
startup.bat就是windows系统的运行程序,双击打开
startup.sh 是Linux系统的运行程序
双击后如若出现如下页面说明运行成功:
启动服务器后,在浏览器输入:
http://localhost:8080/
正常显示页面:
(1)双击startup后,运行界面的中文是乱码,解决方案:
用记事本打开,查看下图方框位置是不是 GBK,如果不是,修改为GBK
(2)用浏览器打开的网页中文是乱码:
conf目录文件夹下的server.xml文件,确认下面方框内编码方式为 UTF-8
其次,html文件的头部
下载好后,进入压缩包进行解压,可以看到有如下目录:
大概了解一下各目录:
(1)bin:命令文件夹,像我们启动和关闭该程序就在该目录文件夹下
(2)conf:配置文件夹,像我们如果要修改端口号啦,修改编码编码类型啦,都在该目录文件夹下
(3)lib:第三方架包,比如java中的.class文件什么的
(4)logs:日志文件夹
(5)wepapps:放我们的应用程序,默认访问的是该文件夹下的root程序,我们编写好的前端html页面就可以放在这个目录文件夹下
一个简单的小栗子:编写一个html页面,然后将该页面保存在wepapps目录里的root文件夹中
然后就可以通过在浏览器输入:localhost:8080/后面跟上文件名称
如我这里的:
localhost:8080/test1.html
【ps】也可以把自己的电脑就当作服务器,然后通过 自己电脑的ip地址:Tomcat端口号(默认是8080)/项目或文件名,
如https://192.168.3:8080/test.html
但是呢,因为我们没有连接外网的独立的ip地址,所以,这种方法也只是可以让处于同一局域网内的用户访问到该网页啦。