您的位置:首页 > 运维架构 > Tomcat

【web服务器】——tomcat部署Java Web 项目的三种方式

2016-09-11 21:19 691 查看
       最近这些天一直在用tomcat部署公司项目,一回生二回熟,可是还是会出现一些问题,例如tomcat起不来呀,这种常见的错误,起来了但是会出现异常等,还有一些奇葩的问题。

       公司开发时没有网,那几天查资料解决问题花了我好多流量,心疼啊~于是乎,我们还是先了解一些原理性的东西比较好,这样出现了问题能够快速的对问题进行定位,不至于在网络的海洋中转晕了~

       那么我们是如何用tomcat部署项目呢,怎么着我们就可以访问页面了呢?

        部署web应用,我们就先要让web服务器找到web应用程序。

        那web服务器是什么呢?web服务器就是一个容器,它可以向发出请求的浏览器提供文档的程序,它可以放置网站文件,让全世界浏览;也可以放置数据文件,让全世界下载。大型的web服务器主要有Weblogic,Apache,Tomcat,Jboss等,小型的web服务器有 nginx等。

        

        那web应用程序又是什么呢?一个web应用程序就是一个文件夹,文件夹里有很多子文件夹、资源文件(例如:JSP文件,HTML文件等)、类文件(编译后的Servlet文件,其它的class文件)、配置文件(xml文件)。

       默认情况下,Tomcat服务器会查找安装目录下的webapps文件件下的应用程序,当然,我们还可以自定义的添加tomcat查找应用程序的目录。所以,就出现了如下三种部署方式:

       

       1、直接将web应用程序放在webapps文件夹下

       2、修改server.xml文件

 

       修改<Context>节点下的docBase,以及path属性的值。

<Context path="/nsbd" reloadable="true" docBase="E:\workspace\nsbd\web" workDir="E:\workspace\nsbd\work" />
       Path:虚拟路径,用于设置要发布的web项目的名称,用于浏览器访问的URL。

       docBase:放置web项目的位置(可以是绝对路径,也可以是相对路径),如果为/,则位于webapps目录下。

       debug:日志记录的调试信息记录等级。

       reloadable:为了方便开发人员设置的,true:tomcat将检测应用程序的/WEB-INF/lib和/WEB-INF/classes目录的变化,以决定是否自动重新载入变化后的程序。

        3、创建配置文件进行部署

在/conf/Catalina/localhost目录下新建一个包含<Context>节点的xml文件,文件名即为path虚拟路径下的文件名。在xml文件中设置的path是无效的。

       例如,我的xml配置文件名称为examples,而<Context>节点下的path配置的为"/nsbd",则使用“nsbd“是无法访问到的,使用examples便可以访问到。

       如图所示:

                                      




       启动tomcat的start.bat文件,如果启动成功,通过xml文件名或path属性值可以成功访问页面,那么你的web项目就部署成功了。

       总结:

        之前学习Servlet的时候都是直接将web应用程序放在了webapps下或者是修改server.xml,在公司的时候是用的新建配置文件的方法,其实原理都是一样的,目的就是让web服务器找到web应用程序。而后两种方法有一个优点就是你可以自定义进行配置,比较方便。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: