安装和可能出现的错误:
安装:解压或者直接安装即可,不要有中文路径
配置:Tomcat 是 Java 写的,所以需要 JDK,在环境变量中要配置 JAVA_HOME
可能导致的错误:
① JAVA_HOME 配置时,后面写到 JDK 目录就可以,不需要分号结束
② 端口被占用,检查计算机的8080端口是否被占用
Tomcat 的目录结构:
bin 目录:主要用于启动和关闭 Tomcat
conf 目录:配置目录
— server.xml:配置和服务器相关的信息
— web.xml :配置 WEB 站点
— users.xml:配置 Tomcat 用户密码和权限
lib 目录:放置运行 tomcat 运行时需要的 jar 包
logs 目录:存放日志,里面是日志文件
temp 目录:存放临时文件
webapps 目录:放置 web 应用
work 目录:存放 jsp 被访问后,生成的对应的 servlet 文件
Tomcat 的访问格式:
http://localhost:8080/webapp/index.html
localhost:主机号(域名)
8080:端口号
webapp:web 应用
index.html:资源文件
URL 与 URI::
URI:统一资源标识符 (uniform resource identifier),用来唯一的标识一个资源。
URL:统一资源定位器 (uniform resource locator),它是一种具体的URI,即URL可以用来标识一个资源,而且还指明了如何locate这个资源。
两者的区别:URI 是以一种抽象的,高层次概念定义统一资源标识,而 URL 则是具体的资源标识的方式。URL 是一种URI。
http://localhost:8080/webapp/index.html:URL 统一资源定位符,是因特网上标准的资源的地址
/webapp/index.html:URI 统一资源标识符,是一个用于标识某一互联网资源名称的字符串
Context 标签:
需求:当前主机下的目录磁盘满了,需要把 WEB 应用部署到其他磁盘。
<host>
<Context path="/web2" docBase="f:\webApp">
// path:虚拟目录,浏览器输入的目录
// docBase:磁盘下的真实目录
</host>
Context 标签下常用属性说明:
path:虚拟目录
docBase:虚拟目录的磁盘真实路径
reloadable:如果设为 true,表示自动更新应用。一般只在调试阶段使用,发布之后就不会再使用了,这样开销会很大。
Host 标签:
需求:在真实情况下,不可能使用 http://localhost:8080/webapp/index.html 这种格式去访问网站,一般会使用 http://www.baidu.com 这种格式,如何实现的?
如何配置自己的主机名:
<Host name="www.lee.com" appBase="D:/" unpackWARs="true" autoDeploy="true">
// 主机名设置为:www.lee.com
<Context path="/" docBase="Demo"/>
// path=/ url 中不写 webApp 名,直接访问
// docBase="Demo" 真实磁盘路径
</Host>
// 把端口号改为 80,浏览器默认端口。
// 因为 DNS 服务器没有我的 IP,需要在本地 HOSTS 文件下模拟
Tomcat 可以管理多个主机,一个主机可以管理多个 WEB 应用。
浏览器 访问 web 站点的原理:
1. 先查看本地 hosts ,是否有对应 IP
2. 如果本地 hosts 没有对应IP,就去 DNS 查看
3. 通过 DNS 连接服务器
4. 因为是 TCP 连接,要首先建立连接
5. 发送请求
6. 收到响应