本地安装的Tomcat服务器版本是 Apache Tomcat/7.0.42

启动 localhost

使用Tomcat的前提是安装了jdk,我在本地安装了jdk7。Tomcat服务器的文件目录为F:\xampp\tomcat。该目录中的主要子目录及其作用:

No.     目      录    作       用    
1   bin  所有的可执行命令,启动和关闭服务器的命令就在此文件夹之中 
2   conf  服务器的配置文件夹,其中保存了各个配置信息
3   lib  Tomcat服务器所需要的各个库文件
4   logs  保存服务器的系统日志
5   webapps  Web应用程序存放的目录,Web项目保存到此目录中即可发布
6   work  临时文件夹,生成所有的临时文件  ( *.java、*.class )

可通过Tomcat中的bin目录下的tomcat7.exe命令启动Tomcat服务器,也可以通过xampp的控制面板中tomcat开启按钮来打开服务器。注意启动后不可关闭。

服务器启动后,打开浏览器,并在浏览器中输入“http://localhost:8080/” 或者“http://127.0.0.1:8080”,即可看到页面:


下面开始修改配置文件:由于默认端口号是8080,可以打开Tomcat目录下中的conf/server.xml文件,找到以下内容:

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

将pot定义的内容8080修改为80即可。这样,以后直接输入“http://localhost/”即可进行访问,不用再输入端口号。配置修改后,需要重新启动服务器方能生效。

配置虚拟目录

|- 项目路径配置server.xml

在Tomcat服务器的配置中,最重的是配置虚拟目录的操作,因为每一个虚拟目录都保存了一个完整的Web项目,这样对于项目的开发及运行维护都有很大的帮助。

在F盘下建立tom文件夹。接下来可以修改Tomcat目录下的conf/server.xml文件,添加以下代码:

<Context path="/tom" docBase="F:\tom" reloadable="true" />


注意:path name可以不与docBase name一致,path name是在浏览器中输入的访问路径(localhost/pathname)。

这里的reloadable指的是,当class文件发生变化时,可以自动重新载入。如果重新加载了class文件,则在Tomcat后台将出现以下提示信息:

信息:Reloading this Context with name [path] has started

注:Tomcat安装目录的lib文件夹,以及项目目录的WEB-INF\classes和WEB-INF\lib文件夹实际上都表示了classpath,所以直接将类或jar包或*.class文件复制到这些文件夹就可以直接使用。

|- 项目配置信息web.xml

在项目目录F:\tom下新建WEB-INF文件夹,将默认的 Tomcat 安装目录下的文件 tomcat\webapps\ROOT\WEB-INF\web.xml 文件拷贝到新建的WEB-INF文件夹内。可以参考Tomcat安装目录下的tomcat\conf\web.xml文件的内部信息,进行相关配置内容的编写。这两个web.xml文件的配置内容将形成并集,如果有相同的标签选项,则在浏览器中访问项目文件时,服务器根据项目目录内的web.xml文件的配置内容为依据作出相关判断。总而言之,默认以conf\web.xml为配置依据,如有相同配置项,优先考虑项目目录下的web.xml文件。例如:

如果想让服务器支持目录浏览功能,可以在WEB-INF\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>

  重启服务器,在浏览器中输入localhost/tom/即可正常浏览虚拟目录。


页面第一次执行时是比较慢的,而之后的执行速度就会变得很快。这是由于JSP在第一次执行时会首先把*.jsp文件翻译成*.java文件,然后再将*.java编译成*.class文件后才执行的。且java和class文件保存在tomcat\work\Catalina\localhost\tom\org\apache\jsp\xxx目录下。修改jsp文件之后,每次运行都会重新生成新的文件。

加入错误处理页

|- 在每个JSP页面中指定

在页面顶部加了以下指令:

<%@ page errorPage="error.jsp"%> <%-- 一旦出现错误之后将跳转到error.jsp中 --%>

 这里,error.jsp的内容如下:

<%@ page language="java" contentType="text/html" pageEncoding="GBK"%>
<%@ page isErrorPage="true"%>
<html>
<head><title>title</title></head>
<body>
<%
response.setStatus(200) ;
%>
<h1>程序出现了错误</h1>
</body>
</html>

  注意:如果不加上“ response.setStatus(200) ”,那么同样会服务端跳转并显示error.jsp的内容,但是返回的状态码将是500,而设置返回状态码是200之后在客户端看来服务器的响应是正常的,因此最好加上。

|- 在整个虚拟目录中指定

修改WEB-INF\web.xml,加入错误处理:

	<error-page>
<error-code>500</error-code>
<location>/basic_page/error.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/basic_page/error.jsp</location>
</error-page>
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/basic_page/error.jsp</location>
</error-page>

  全局的错误处理可以处理两种类型的错误,一种是HTTP代码的错误,如404或500;还有一种是异常的错误,如NullPointerException等。以上的配置表示,如果在项目中出现了404或500的HTTP状态码,或者出现了空指向异常(NullPointerException),则会跳转到basic_page/error.jsp 页面进行显示。但是,此时跳转过去,地址栏同样不会有任何变化,所以依然是服务器端跳转。

将程序中的System.out.println()打印信息记录到指定日志中

在Linux系统中,Tomcat 启动后默认将很多信息都写入到catalina.out 文件中,我们可以通过tail -f catalina.out 来跟踪Tomcat 和相关应用运行的情况。 在windows下,我们使用startup.bat启动Tomcat以后,会发现catalina日志与Linux记录的内容有很大区别,大多信息只输出到屏幕而没有记录到catalina.out里面。 本文的内容就是要实现在windows下,将相关的控制台输出记录到后台的日志中以便查看。

1、打开bin下面的startup.bat文件,把call "%EXECUTABLE%" start %CMD_LINE_ARGS%
改为call "%EXECUTABLE%" run %CMD_LINE_ARGS% 。
2、打开bin下面的catalina.bat文件,会发现共有4处 %ACTION% ,在后面分别加上
>> %CATALINA_HOME%\logs\catalina_out.txt 
重启tomcat,就会发现在logs文件夹下出现了catalina_out.txt文件,把原本在控制台输出的打印记录信息(System.out.println)全写进去了。

注意:这里所实现的功能为单独输出到日志文件(catalina_out.txt),且不会作为Tomcat的控制台信息打印到其所对应的log文件中。在这之前,打印信息仅仅输出在Tomcat的控制台,但不会同步记录到控制台的log文件中去。此外,该文件还会持续增长,且没有其它的区分标识,这也是其缺点所在。如果可以直接输出到控制台的信息记录中,就不会出现这种情况了。

怎样查看Tomcat动态控制台信息

下载Tomcat:

http://tomcat.apache.org/download-80.cgi

Tomcat服务器的配置的更多相关文章

  1. Tomcat服务器常用配置和HTTP简介

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  2. JavaEE:Tomcat服务器常用配置和HTTP简介

    Web服务器常用配置1.Web系统采用B/S结构通信的:Browser --- Server1)浏览器向服务器发送访问目标资源请求(请求)2)服务器根据请求的目标资源路径,在服务器端进行查找(请求查找 ...

  3. 整合Solr到Tomcat服务器,并配置IK分词

    好久没有接触新东西了,最新开始熟悉solr,实例展示单机环境solr整合. 整合方案一 1.下载Tomcat与solr并解压 Tomcat解压后磁盘路径为D:\program files\Tomcat ...

  4. jaee开发起步:tomcat服务器的配置

    1.将下载下来的apache-tomcat-6.0.13.zip解压到任意文件夹. (打开tomcat官网,选择下载tomcat6.x.zip版本的tomcat不需要安装,直接解压并配置一下环境变量就 ...

  5. Tomcat服务器中配置多个域名,访问不同的web项目

    先说一下在本地电脑怎么实现: 想要在一个tomcat下访问两个web项目时,可以通过添加虚拟host的方式来解决. 详细步骤如下: 1.将两个项目打包放入tomcat的webapps目录下: 2.修改 ...

  6. 启动tomcat服务器,配置CATALINA_HOME和JAVA_HOME

    遇到很多次运行startup.bat后,一个窗口一闪而过的问题,但是从来没去纠正怎样修改配置才是正确的,现在从网上查阅的资料整理如下:tomcat在启动时,会读取环境变量的信息,需要一个CATALIN ...

  7. linux tomcat服务器优化配置

    在 /usr/local/tomcat/bin/catalina.sh里首行加入, 防止内存不够的问题 JAVA_OPTS="-Xms512m -Xmx1024m -Xss1024K -XX ...

  8. 怎么通过外网来访问自己在Tomcat服务器中配置的项目

    目前还没有试验过 https://blog.csdn.net/qingyisuo/article/details/80086105

  9. 在Mac上关于tomcat服务器的安装、配置、启动、部署web详细流程

    之前在Mac上通过安装mamp来搭建PHP环境服务器,但是对于java来说,目前还是没有找到类似mamp这样强大的软件来构建及管理java环境服务器,所以目前也是通过命令行来进行tomcat服务器的安 ...

随机推荐

  1. PHP性能分析工具xhprof的安装使用与注意事项

    前言 xhprof由facebook开源出来的一个PHP性能监控工具,占用资源很少,甚至能够在生产环境中进行部署. 它可以结合graphviz使用,能够以图片的形式很直观的展示代码执行耗时. 下面主要 ...

  2. SQL语句order by两个字段同时排序。

    ORDER BY  后可加2个字段,用英文逗号隔开.理解:对两个字段都排序,并不是之排序其中的一个字段: f1用升序, f2降序,sql该这样写 ORDERBY  f1, f2  DESC 也可以这样 ...

  3. 如何设置让网站禁止被爬虫收录?robots.txt

    robot.txt只是爬虫禁抓协议,user-agent表示禁止哪个爬虫,disallow告诉爬出那个禁止抓取的目录. 如果爬虫够友好的话,会遵守网站的robot.txt内容. 一个内部业务系统,不想 ...

  4. 织梦dedecmsV5.7联动类型无法显示的处理方法

    最近织梦dedecms在新的功能中添加了一个联动类型这样的一个功能.所谓的联动类型,类似于一级目录下有二级目录,二级目录下又有三级目录,可以理解为数据结构中树形结构.级和级之间都是有着联系的.为了让大 ...

  5. Cocoa的MVC架构分析

    Cocoa是Mac OS和iPhone OS上的开发框架,使用Objective-C做为开发语言.当然,在代码中也可以嵌入C和C++的语句.初识Objective-C时会觉得它的语法很奇怪,但本质上和 ...

  6. Java 中判断类和实例之间的关系

    判断类与实例的关系有以下三种方式 1.instanceof关键字,用来判断对象是否是类的实例 (对象 => 类 )   2.isAssignableFrom,用来判断类型间是否存在派生关系 (类 ...

  7. C# 将Access中时间段条件查询的数据添加到ListView中

    C# 将Access中时间段条件查询的数据添加到ListView中 一.让ListView控件显示表头的方法 在窗体中添加ListView 空间,其属性中设置:View属性设置为:Detail,Col ...

  8. 我看过得最易懂的一段AOP的解释

    http://blog.csdn.net/zhangliangzi/article/details/51648032 面向切面编程(AOP是Aspect Oriented Program的首字母缩写) ...

  9. 【处理多服务器日志合并处理问题】多服务器的日志合并统计——apache日志的cronolog轮循

    转发:http://www.chedong.com/tech/rotate_merge_log.html   内容摘要:你完全不必耐心地看完下面的所有内容,因为结论无非以下2点:1 用 cronolo ...

  10. Hystrix请求命令 HystrixCommand、HystrixObservableCommand

    Hystrix有两个请求命令 HystrixCommand.HystrixObservableCommand. HystrixCommand用在依赖服务返回单个操作结果的时候.又两种执行方式  -ex ...