在Tomcat中部署Java Web应用程序

在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署。在下文中$CATALINA_HOME指的是Tomcat根目录。 我们常用的是静态部署,这里就只介绍一下静态部署。
静态部署
     静态部署指的是我们在服务器启动之前部署我们的程序,只有当服务器启动之后,我们的Web应用程序才能访问。以下3中方式都可以部署:
     1、将PetWeb目录拷贝到$CATALINA_HOME\webapps下,然后启动服务器就可以了。这种方式比较简单,但是web应用程序必须在webapps目录下。访问地址如下:
http://localhost:8080/PetWeb/
   2、这种方式可以不必将PetWeb目录拷贝到webapps下,直接在F:\部署。方法如下,更改$CATALINA_HOME\conf\server.xml文件,在<host>标签内添加<Context>标签,内容如下:
<Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/>

其中reloadable="false"表示当应用程序中的内容发生更改之后服务器不会自动加载,这个属性在开发阶段通常都设为true,方便开发,在发布阶段应该设置为false,提高应用程序的访问速度。docBase为路径,可以使用绝对路径,也可以使用相对路径,相对路径相对于webapps。path属性的值是访问时的根地址。访问地址如下:http://localhost:8080/Pet/
     3、这种方式和第二种方式差不多,但是不是在Server.xml文件中添加Context标签,而是在$CATALINA_HOME\conf\Catalina\localhost中添加一个xml文件,如Pet.xml,内容如下:
<Context docBase="F:/PetWeb" reloadable="false" />大家可能发现和第二种方式差不多,但是缺少了path属性,这种方式服务器会使用.xml的名字作为path属性的值。访问地址如下:http://localhost:8080/Pet/

     我们刚才是将PetWeb文件夹部署在了服务器中,我们知道可以将Web应用程序的内容打成.war包,然后在部署在服务器上。打包请参考如下步骤:
     1、打开命令提示符(Start-->Run-->cmd)
     2、设置jdk环境变量
     3、在命令提示符中进入F:\PetWeb文件后,键入如下命令:
jar ..\Pet.war *.*  这样在F:\下应该有Pet.war文件。其中..表示当前目录的父目录。
     部署Pet.war文件非常简单,将刚才有docBase="F:\PetWeb"更改为docBase="F:\Pet.war"或者直接将其拷贝到webapps下也可以。重新启动服务器就可以将Pet.war部署为一个Web应用程序了。如果你够细心的话你会发现,服务器将Pet.war文件解开,并且在webapps下面又生成了一个Pet文件夹,然后把Pet.war的内容拷贝到里面去了。我们可以通过以下方式取消自动解压缩,配置方式如下:
<Context docBase="F:/PetWeb" reloadable="false" unpackWAR="false"/>

PS:我们经常用的方式是第二种,如果想直接通过域名或者是IP访问我们部署的项目,例如通过http://localhost访问本机的项目,

首先需要把tomcat的默认端口8080改成80,在tomcat的conf文件夹下,在server.xml文件中
找到
<Connector port="8080" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

修改为
<Connector port="80" maxHttpHeaderSize="8192"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8443" acceptCount="100"
               connectionTimeout="20000" disableUploadTimeout="true" />

然后,把我们添加的<Context docBase="F:/PetWeb" reloadable="false" path="/Pet"/>

这句话修改为<Context docBase="F:/PetWeb" reloadable="false" path=""/>

注意在Context元素上path= " ",这让Tomcat把我们的Web应用程序映射为root URI路径(path路径一般写法为“/您的程序名称”)。

重启Tomcat,一旦完成启动,请浏览http://localhost,您会看到自己的Web应用程序。

你可能感兴趣的:(tomcat,http,home,catalina)