1.下载和安装tomcat
在安装过程中,会让你选择端口(默认是8080),我配置为80,因为在服务器上访问的默认是80端口,用户名和密码自己输入。
2.把在elipse里运行好的项目(在elipse的tomcat插件下)复制到webapps下,并给文件夹个命名,比如:bbs。
3.如果我们部署多个工程到tomcat下,默认你的包是放在工程下的 web-inf/lib下,这样会有很多包的重复问题,容易产生服务器的内存溢出问题,如果把所有的工程的lib复制到tomcat的lib下,则会发生包冲突的问题。特别是不同版本的包的问题。我的见解是把所有相同的包,很多工程经常用到的包放到tomcat的lib 下,工程用到的特殊的包放到各自的lib下。
(以上可以打成*.war包,放到tomcat/webapps下)
4.修改配置文件:
server.xml修改如下:
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
这个端口和你一开始安装的端口一致,另外80端口默认是被IIS服务占用的,这时候可以在 系统服务里停掉IIS的服务。URIEncoding是你的编码格式,如果没设置的话,页面会出现乱码,即使你在工程里设置了过滤器。
虚拟主机的配置:
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context
docBase="D:/Tomcat/webapps/"
path="" privileged="true" >
</Context>
</Host>
如果你有域名绑定的话,这样设置:
<Host name="www.joynew.cn" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context
docBase="D:/Tomcat/webapps/" 这是你要绑定的目录
path="" privileged="true" >
</Context>
</Host>
这样我的访问地址:www.joynew.cn/bbs 或者http://localhost/bbs
context.xml配置如下:
<Context privileged="true">
<WatchedResource>WEB-INF/web.xml</WatchedResource>
</Context>
如何配置对freemarker的支持呢?也就是配置对ssi的支持。
<servlet>
<servlet-name>ssi</servlet-name>
<servlet-class>
org.apache.catalina.ssi.SSIServlet
</servlet-class>
<init-param>
<param-name>inputEncoding </param-name>
<param-value>utf-8 </param-value>
</init-param>
<init-param>
<param-name>outputEncoding </param-name>
<param-value>utf-8 </param-value>
</init-param>
<init-param>
<param-name>buffered</param-name>
<param-value>1</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>expires</param-name>
<param-value>666</param-value>
</init-param>
<init-param>
<param-name>isVirtualWebappRelative</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>4</load-on-startup>
</servlet>
这段代码不要注释。
<servlet-mapping>
<servlet-name>ssi</servlet-name>
<url-pattern>*.shtml</url-pattern>
</servlet-mapping>
这个也不要注释。
tomcat的server.xml中的一个<Host>标签中加一句<Context>,docBase写你的项目名称就行了。端口用80端口就可以隐藏端口了
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="prjName" debug="0" reloadable="true"/>
</Host>