对Tomcat部署web应用的方式总结,常见如下:
Tomcat自动部署
修改Server.xml文件部署
用UE或EditPlus打开Tomcat位于conf/server.xml的配置文件,找到以下内容:
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"> ..... </Host>
在Host之间添加如下内容:
<Context path="/Mywebapps" reloadable="true" docBase="d:\Mywebapps" workDir="d:\Mywebapps\emp"/>
path:表示访问的路径;如上述例子中,访问该应用程序为:http://localhost:8080/Mywebapps
reloadable:表示可以在运行时在classes与lib文件夹下自动加载类包
docbase:表示应用程序的地址,注意斜杠的方向“\”
workdir:表示缓存文件的放置地址
增加自定义context部署文件
在Tomcat安装目录conf\Catalina\localhost下,里面有Tomcat自带的三个应用,随意复制其中的一个XML文件,然后修改docbase指向你自己的应用程序,并把path改名,各参数参见上第三种方法。或者你也可以自己新建一个myapp.xml(注意此文件名将作为Context中的path,不管文件里的path怎么设置也无效),将以下内容复制过去,修改相应路径即可。
<Context path="/test" docBase="F:/J2EE/yazd_war_3_0" debug="0" privileged="true" reloadable="true" > </Context>
部署完毕后,通过http://localhost:8080/myapp 就可以访问。
通过Tomcat Web Application Manager部署web应用
登陆tomcat管理控制台:http://localhost:8080/,输入用户名和密码后便可管理应用并动态发布。
在Context Path(option):中输入/myapp ,这代表你的应用的访问地址。
XML Configration file URL中要指定一个xml文件,比如我们在F:\下建立一个hmcx.xml文件,内容如下:
<Context reloadable="false" />
其中docBase不用写了,因为在下一个文本框中填入。
或者更简单点,这个文本框什么都不填,在WAR or Directory URL:中键入F:\hmcx即可,然后点击Deploy按钮,上面就可以看到了web应用程序,名字就Context Path(option):中的名字myapp。
如果部署.war文件还有更加简单的方式,下面还有个Select WAR file uploae点击浏览选择.war文件,然后点击Deploy也可以。
web应用显示目录
tomcat默认访问项目,不会显示项目的文件和目录,项目开发期,很需要这个功能。
可以在web.xml文件中加入
<servlet> <servlet-name>default</servlet-name> <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class> <init-param> <param-name>debug</param-name> <param-value>0</param-value> </init-param> <init-param> <param-name>listings</param-name> <param-value>true</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet>
如果项目开发完成,准备部署在服务器上时,记住要把第三步中web.xml文件中参数listings的值改为false,这样可以避免把项目的部署路径呈现给使用者!
将listings的value改为true,然后重新启动tomcat,在输入url,测试成功!