Tomcat服务器详解
2015-11-18 13:52
447 查看
Tomcat 服务器是javaEE项目使用最广泛的服务器之一,并且还是免费的。所以Tomcat现如今拥有大片的追捧者。
首先需要下载一个Tomcat服务器,我这里有一个免安装版本的, 下载地址:http://download.csdn.net/detail/ch656409110/4434470
打开服务器目录,在根目录里面有backup,bin,conf,lib,logs,temp,webapps,work等目录。接下来依个介绍。
1、backup
打开发现和conf 里面的文件一样,但是内容不一样。
这是因为使用eclipse绑定tomcat之后在Project Explorer 窗口创建了一个Server项目,每次修改配置都会在这里修改,为了方面起见,eclipse 在tomcat的根目录创建了 一个备份配置的文件backup。这个时候如果直接修改conf下面的配置会被eclpse覆盖掉,因为它认准的是D:\myProject\Servers 这里面的配置。
catalina.bat ,startup.bat,shutdown.bat 等等,另外这些bat后缀的命令是在windows系统下执行的,sh后缀的命令是在Linux系统下执行的。
现在以Windows环境为例:
<1>catalina.bat 是核心文件,执行之后的效果如下:
一般的,如果没有配置java环境变量,但是又想使用tomcat,那么可以在该文件的顶部加上 set JAVA_HOME="D:\Program Files\Java\jdk1.6.0_12" 就好了,如果使用tomcat经常性的内存溢出,那么需要加大tomcat的最大使用内存,可以在该文件的顶部加上 set CATALINA_OPTS=-Xms512m -Xmx1048m -XX:PermSize=128m -XX:MaxPermSize=400m 就好了。
所以catalina.bat 是非常核心的文件
<2>startup.bat 是启动服务器的命令,效果如下:
<3>shutdonw.bat 是关闭服务器的命令,效果如下:
<4>service.bat 是创建service的服务,到时候可以在服务列表中看到。
直接打开service命令,效果如下:
可见缺少参数,install 或者 remove 服务以及服务名称
俺就要通过cmd命令实现了
效果如下:
然后 Ctrl + R 打开引用,输入“services.msc” 打开服务管理器,可以找到 刚刚创建的tomcat7.022服务,效果如下:
然后删除该服务同样的方式使用remove关键字就好了。
<5>version.bat
看见名字就知道是查看tomcat的版本信息,效果如下:
3、conf
这里面存在的是Tomcat服务器的所有配置信息,常用的配置文件有:context.xml,server.xml,web.xml等等。
<1>context.xml
context.xml是上下文配置,一般在这里面控制权限,或者数据源等等信息,比如:
[html]
view plaincopyprint?
<Context privileged="true" reloadable="true" >
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->
<!-- Uncomment this to enable Comet connection tacking (provides events
on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
<Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/facelook" password="123456" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521:ORCL" username="facelook"/>
</Context>
server.xml主要用于配置tomcat服务器的服务中各种连接配置,另外还有引擎下部署虚拟目录发布项目等等。
关于连接配置,要在<Connector>这里修改,具体如下:
[html]
view plaincopyprint?
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
关于部署虚拟目录,要在<Engine>下的<Host>下增加<Context>,具体如下:
[html]
view plaincopyprint?
<Context docBase="D:\myProject\jeecms\WebContent" path="/jeecms" reloabable="true"/>
这里必须指向WebContent根目录,因为WEB-INF在WebContent的根目录。
<3>tomcat-user.xml
tomcat-user.xml这里面配置了用户权限信息,如果配置好了可以在tomcat欢迎页面管理发布的项目。但是一般默认配置不起作用,登录进去直接403禁止访问,后来才知道指定的权限不够,重新分配下权限就好了,比如:
[html]
view plaincopyprint?
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-script"/>
<role rolename="admin-gui"/>
<user username="chenghui" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
<4>web.xml
web.xml 和javaEE项目一样,同样属于核心配置,里面绑定了jsp,servlet,shtml ,welcome file 等等的配置。
比如:commons-daemon.2013-08-04.log记录的是刚刚创建tomcat7.0.22服务产生的日志,具体如下:
比如:localhost_access_log.2013-08-04.txt 记录的是用户访问的页面信息情况,具体如下:
比如:catalina.2013-08-04.log 记录的是项目运行时候所有的信息,报错控制台输出,抛出的异常,记录的日志等等,具体如下:
首先需要下载一个Tomcat服务器,我这里有一个免安装版本的, 下载地址:http://download.csdn.net/detail/ch656409110/4434470
打开服务器目录,在根目录里面有backup,bin,conf,lib,logs,temp,webapps,work等目录。接下来依个介绍。
1、backup
打开发现和conf 里面的文件一样,但是内容不一样。这是因为使用eclipse绑定tomcat之后在Project Explorer 窗口创建了一个Server项目,每次修改配置都会在这里修改,为了方面起见,eclipse 在tomcat的根目录创建了 一个备份配置的文件backup。这个时候如果直接修改conf下面的配置会被eclpse覆盖掉,因为它认准的是D:\myProject\Servers 这里面的配置。
2、bin
顾名思义,可执行文件的目录,里面放着tomcat服务器所有的执行服务。最常用的有catalina.bat ,startup.bat,shutdown.bat 等等,另外这些bat后缀的命令是在windows系统下执行的,sh后缀的命令是在Linux系统下执行的。
现在以Windows环境为例:
<1>catalina.bat 是核心文件,执行之后的效果如下:
一般的,如果没有配置java环境变量,但是又想使用tomcat,那么可以在该文件的顶部加上 set JAVA_HOME="D:\Program Files\Java\jdk1.6.0_12" 就好了,如果使用tomcat经常性的内存溢出,那么需要加大tomcat的最大使用内存,可以在该文件的顶部加上 set CATALINA_OPTS=-Xms512m -Xmx1048m -XX:PermSize=128m -XX:MaxPermSize=400m 就好了。
所以catalina.bat 是非常核心的文件
<2>startup.bat 是启动服务器的命令,效果如下:
<3>shutdonw.bat 是关闭服务器的命令,效果如下:
<4>service.bat 是创建service的服务,到时候可以在服务列表中看到。
直接打开service命令,效果如下:
可见缺少参数,install 或者 remove 服务以及服务名称
俺就要通过cmd命令实现了
效果如下:
然后 Ctrl + R 打开引用,输入“services.msc” 打开服务管理器,可以找到 刚刚创建的tomcat7.022服务,效果如下:
然后删除该服务同样的方式使用remove关键字就好了。
<5>version.bat
看见名字就知道是查看tomcat的版本信息,效果如下:
3、conf
这里面存在的是Tomcat服务器的所有配置信息,常用的配置文件有:context.xml,server.xml,web.xml等等。
<1>context.xml
context.xml是上下文配置,一般在这里面控制权限,或者数据源等等信息,比如:
[html]
view plaincopyprint?
<Context privileged="true" reloadable="true" >
<!-- Default set of monitored resources -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->
<!-- Uncomment this to enable Comet connection tacking (provides events
on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->
<Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/facelook" password="123456" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521:ORCL" username="facelook"/>
</Context>
<Context privileged="true" reloadable="true" > <!-- Default set of monitored resources --> <WatchedResource>WEB-INF/web.xml</WatchedResource> <!-- Uncomment this to disable session persistence across Tomcat restarts --> <!-- <Manager pathname="" /> --> <!-- Uncomment this to enable Comet connection tacking (provides events on session expiration as well as webapp lifecycle) --> <!-- <Valve className="org.apache.catalina.valves.CometConnectionManagerValve" /> --> <Resource auth="Container" driverClassName="oracle.jdbc.driver.OracleDriver" maxActive="100" maxIdle="30" maxWait="10000" name="jdbc/facelook" password="123456" type="javax.sql.DataSource" url="jdbc:oracle:thin:@localhost:1521:ORCL" username="facelook"/> </Context><2>server.xml
server.xml主要用于配置tomcat服务器的服务中各种连接配置,另外还有引擎下部署虚拟目录发布项目等等。
关于连接配置,要在<Connector>这里修改,具体如下:
[html]
view plaincopyprint?
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
关于部署虚拟目录,要在<Engine>下的<Host>下增加<Context>,具体如下:
[html]
view plaincopyprint?
<Context docBase="D:\myProject\jeecms\WebContent" path="/jeecms" reloabable="true"/>
<Context docBase="D:\myProject\jeecms\WebContent" path="/jeecms" reloabable="true"/>
这里必须指向WebContent根目录,因为WEB-INF在WebContent的根目录。
<3>tomcat-user.xml
tomcat-user.xml这里面配置了用户权限信息,如果配置好了可以在tomcat欢迎页面管理发布的项目。但是一般默认配置不起作用,登录进去直接403禁止访问,后来才知道指定的权限不够,重新分配下权限就好了,比如:
[html]
view plaincopyprint?
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-script"/>
<role rolename="admin-gui"/>
<user username="chenghui" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>
<role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <role rolename="admin-script"/> <role rolename="admin-gui"/> <user username="chenghui" password="123456" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script"/>修改配置之后在访问 就没问题了,效果如下:
<4>web.xml
web.xml 和javaEE项目一样,同样属于核心配置,里面绑定了jsp,servlet,shtml ,welcome file 等等的配置。
4、logs
tomcat服务器在运行的过程中产生的所有日志都在logs目录下,详见的日志类型如下:比如:commons-daemon.2013-08-04.log记录的是刚刚创建tomcat7.0.22服务产生的日志,具体如下:
比如:localhost_access_log.2013-08-04.txt 记录的是用户访问的页面信息情况,具体如下:
比如:catalina.2013-08-04.log 记录的是项目运行时候所有的信息,报错控制台输出,抛出的异常,记录的日志等等,具体如下:
5、temp
temp 目录存放的是临时目录。6、webapps
webapps 存放的是发布的实际项目,比如之前访问的欢迎页面也在里面。这个没什么要说的,只要保证项目没有问题,在部署的时候就会正常运行。7、work
work目录存放的是 tomcat在运行过程中显示的jsp翻译成jsp和 编译成class的文件。效果如下:相关文章推荐
- java-模拟tomcat服务器
- i-jetty环境搭配与编译
- 实现单Tomcat多Server配置
- 生产环境下的Tomcat配置
- Linux部署Tomcat服务器
- jenkins------结合maven将svn项目自动部署到tomcat下
- 如何搞定tomcat这只喵~
- tomcat在opensuse下开机自启失败的原因分析及解决方法
- jsp项目中更改tomcat的默认index.jsp访问路径的方法
- Tomcat 多端口 多应用
- tomcat 5.0 + apache 2.0 完全安装步骤详解
- Tomcat安全设置 win2003 下tomcat权限限制
- Jsp和PHP共用80端口整合Apache和Tomcat(访问时无需加端口号)
- Tomcat服务器 安全设置第1/3页
- tomcat 6.0.20在一个机器上安装多个服务的方法
- Tomcat 5.5 数据库连接池配置
- Tomcat内存溢出分析及解决方法
- apache tomcat 一个网站多域名的实现方法
- Tomcat无法加载css和js等静态资源文件的解决思路