在Linux中部署Tomcat项目到根目录的方法写到了总结处,前面先介绍所有的部署方法。
1) 下载 Tomcat 服务器
2) 启动并部署 Tomcat 服务器
、解压 tomcat 安装包到一个非中文目录下
、配置环境变量。JAVA_HOME(指向 JDK 安装的根目录)
、双击 apache-tomcat-9.0.46\bin 目录下的 startup.bat,启动服务器(如果一闪而过,那就是没有配置 JAVA_HOME 的环境变量)
、在浏览器中输入 http://localhost:8080
注意:Tomcat 启动不了的时候注意配置 JAVA_HOME:C:\Program Files\Java\jdk1.8.0_152这是安装 JDK的根目录
3) Tomcat 的目录结构
;
1、部署项目的第一种方法(项目直接放入 webapps 目录中)
1、将编写并编译好的web项目(注意要是编译好的,如果是 eclipse,可以将项目打成 war 包放入),放入到 webapps 中
;
2、启动tomcat服务器(双击 apache-tomcat-9.0.46\bin 目录下的 startup.bat,启动服务器)
;
3、在浏览器输入:http://localhost:8080/项目名/访问的文件名
;
2、部署项目的第二种方法(修改 conf/server.xml 文件 )
、打开tomcat下conf/server.xml,在 标签之间输入项目配置信息
path:浏览器访问时的路径名
docBase:web项目的WebRoot所在的路径,注意是WebRoot的路径,不是项目的路径。其实也就是编译后的项目
reloadble:设定项目有改动时,tomcat是否重新加载该项目
、双击 startup.bat,启动 tomcat 服务器,然后在浏览器输入访问的项目名称路径、
;
注意:如果你配置的 path="/xx",那么访问的时候就是这样:
;
3、部署项目的第三种方法(apache-tomcat-7.0.52\conf\Catalina\localhost )
如果要把war包部署到Tomcat根目录,直接使用IP:PORT进行访问,需要的操作稍微复杂一些:
一、把war包解压,部署到除$TOMCAT_HOME/webapps以外的目录(不然可以被访问到目录里的项目,推荐把tomcat的webapps的所有文件删除)
二、删除$TOMCAT_HOME/ webapps/ROOT目录下的所有文件
三、在$TOMCAT_HOME/conf/Catalina/localhost目录下,新建一个ROOT.xml文件,写入类似于如下内容:
<Context docBase="/usr/local/apache-tomcat-9.0.46/webapps/bookstore" debug="0" privileged="true" reloadable="true"/>
其中,docBase指向的是war包解压后的目录名称,需绝对路径。
- 进入到 apache-tomcat-9.0.46\conf\Catalina\localhost 目录,新建一个 项目名.xml 文件
;
- 在 那个新建的 xml 文件中,增加下面配置语句(和上面的是一样的,但是不需要 path 配置,加上也没什么用)
;
- 在浏览器输入路径:localhost:8080/xml文件名/访问的文件名
;
总结:
- 第一种方法比较普通,但是我们需要将编译好的项目重新 copy 到 webapps 目录下,多出了两步操作。
- 第二种方法直接在 server.xml 文件中配置,但是从 tomcat5.0版本开始后,server.xml 文件作为 tomcat 启动的主要配置文件,一旦 tomcat 启动后,便不会再读取这个文件,因此无法再 tomcat 服务启动后发布 web 项目。
- 第三种方法是最好的,每个项目分开配置,tomcat 将以\conf\Catalina\localhost 目录下的 xml 文件的文件名作为 web 应用的上下文路径,而不再理会 中配置的 path 路径,因此在配置的时候,可以不写 path。其中如果想把项目部署到根目录,可以将文件名写成ROOT.xml
通常我们使用第三种方法.
如果要把war包部署到Tomcat根目录,直接使用IP:PORT进行访问,需要的操作稍微复杂一些:
一、把war包解压,部署到除$TOMCAT_HOME/webapps以外的目录(不然可以被访问到目录里的项目,推荐把tomcat的webapps的所有文件删除)
二、删除$TOMCAT_HOME/ webapps/ROOT目录下的所有文件
三、在$TOMCAT_HOME/conf/Catalina/localhost目录下,新建一个ROOT.xml文件,写入类似于如下内容:
<Context docBase="/usr/local/apache-tomcat-9.0.46/webapps/bookstore" debug="0" privileged="true" reloadable="true"/>
其中,docBase指向的是war包解压后的目录名称,需绝对路径。
实际上,直接在tomcat中的webapps文件夹里创建ROOT文件夹将项目放进去,不用在conf/Catalina/localhost写xml配置信息也可以实现和方法三一样的效果。直接在根目录部署项目。