🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# Tomcat容器入门介绍 ### Tomcat环境配置 PS:JDK的安装这里就不讲了,找到安装包直接下一步下一步就行了。 #### 1、配置JDK 在Windows10下,找到环境变量 ![](https://box.kancloud.cn/2016-02-23_56cbf5fd22dc6.jpg) 在环境变量中添加JDK主目录 格式为:JAVA_HOME= 指向你的jdk的主目录(并不是bin文件目录) ![](https://box.kancloud.cn/2016-02-23_56cbf5fd465be.jpg)     在环境变量中添加路径 格式为:path = %JAVA_HOME%\bin; ![](https://box.kancloud.cn/2016-02-23_56cbf5fd577f6.jpg)     在环境变量中添加classpath 格式为:classpath: .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; ![](https://box.kancloud.cn/2016-02-23_56cbf5fd7305d.jpg) 至此,JDK就配置完了。 PS:如果在不配置JAVAHOME的前提下可以用如下方法启动tomcat 在startup.bat的第25行中添加set JAVA_HOME=JKD路径 ![](https://box.kancloud.cn/2016-02-23_56cbf5fd877ce.jpg) #### 2、启动tomcat     到 tomcat 主目录下的bin/startup.bat点击启动 ![](https://box.kancloud.cn/2016-02-23_56cbf5fda8d88.jpg) #### 3、验证是否安装成功     在浏览器中输入http://127.0.0.1:8080(8080是默认端口,如果该端口被占用需要到主目录/conf/server.xml中改端口号) ![](https://box.kancloud.cn/2016-02-23_56cbf5fdcb568.jpg) 出现这个界面,就表示tomcat已经配置成功了。 ### Tomcat配置异常及其解决 #### 1、JAVA_HOME 配置错误,或者没有配置     这时候,可以按照上面的步骤在来一次,在命令行中输入java -version,如果显示 ![](https://box.kancloud.cn/2016-02-23_56cbf5fde2f31.jpg) 就表示成功了。 #### 2、如果你的机器已经占有了8080 端口,则无法启动 解决方法 (1) 你可以8080 先关闭 netstat –an  netstat –anb 来查看谁占用该8080 (2) 主动改变tomcat的端口. 到 conf/server.xml 文件中修改 ![](https://box.kancloud.cn/2016-02-23_56cbf5fe015df.jpg) #### 3、 能够正常启动,但是会导航到另外一个页面     去修改工具->管理加载项,把默认的导航给禁用即可   #### 4、浏览器显示404 Not Found     在访问 tomcat时候,一定要保证 tomcat 服务器是启动,不然就会出现这种错误。 ### Tomcat的目录结构文件 ![](https://box.kancloud.cn/2016-02-23_56cbf5fe17237.jpg) **bin**: 启动和关闭tomcat的bat文件 **conf**: 配置文件  -->**server.xml **: 该文件用于配置和 server 相关的信息, 比如 tomcat启动端口后,配置Host,  配置Context 即web应用  -->**web.xml** : 该文件配置与 web应用(web应用就相当于是一个 web站点) -->**tomcat-users.xml**: 该文件用户配置tomcat 的用户密码 和 权限 **lib** 目录: 该目录放置运行tomcat 运行需要的jar包 **logs** 目录:存放日志, 当我们需要去查看日志的时候,很有用!,当我们启动tomcat错误时候,可以查询信息. **webapps** 目录: 该目录下,放置我们的web应用(web 站点), 比如: 建立  web1 目录  下面放置我们的html 文件 jsp 文件..图片... 则 web1就被当做一个web应用管理起来(☞ 特别说明tomcat 6.0 以后支持 tomcat 5 版本 还有别的设置) **work**: 工作目录: 该目录用于存放jsp被访问后 生成的对应的 server文件 和.class文件 ### 如何访问一个web应用的某个文件 ![](https://box.kancloud.cn/2016-02-23_56cbf5fe6bebc.jpg) PS:想要访问一个WEB应用中的某个文件可以采用url(Uniform Resource Locator)统一资源定位符来访问,其格式如上。 ### Tomcat应用部署目录结构规范 ![](https://box.kancloud.cn/2016-02-23_56cbf5fe88f5b.jpg) ### Tomcat管理虚拟目录     需求:当希望将web应用部署到非webapps目录下时,怎么解决这问题。 PS:可以通过虚拟目录配置技术解决。 ![](https://box.kancloud.cn/2016-02-23_56cbf5fea56bd.jpg) #### 配置步骤     1、找到server.xml文件     2、编辑host节点,添加Context path <Context path="/应用名" docBase="web应用所在的绝对路径"/> 例如:要访问该web应用根目录下的hello.html文件 实际访问时输入的地址:http://localhost:8088/应用名/hello.html    3、重启、重新部署生效   #### context的几个属性的说明 **path**: 应用名称 **docbase**:  web应用所在的绝对路径 **reloadable**: 如果设为ture ,表示 tomcat 会自动更新 web应用,但是这个开销大,建议在开发过程中,可以设为true, 但是真的发布了,则应当设为false **upackWAR**: 如果设为 ture ,则自动解压,否则不自动解压.   PS:war包的打包和Tomcat怎么部署war包可以使用搜索引擎找到。 ### 配置域名 实现的步骤如下: (1) 在C:\WINDOWS\system32\drivers\etc 下的host文件 添加127.0.0.1 www.myweb.com (2) 在tomcat 的server.xml文件添加主机名  ~~~ <Host name="www.myweb.com" appBase="d:\web3”> <Context path="/" docBase="d:\web3" /> </Host> ~~~ (3) 在d:\web3 加入了一个 /WEB-INF/web.xml 把 hello2.html设为首页面,如果连端口都不希望带,则可以把tomcat的启动端口设为80即可. (4) 重启生效 ### Tomcat框架机制 ![](https://box.kancloud.cn/2016-02-23_56cbf5febe08e.jpg) ### Tomcat配置默认主机 ![](https://box.kancloud.cn/2016-02-23_56cbf5fee2b10.jpg) 在tomcat/conf/server.xml 文件 <Engine name="Catalina" defaultHost="主机名"> 如:<Engine name="Catalina" defaultHost="www.myweb.com">       ----------参考《韩顺平.细说Servlet》