`

Tomcat学习笔记1

阅读更多

1.综述

TomcatJava Servlet容器和Web服务器,长于根据请求进行响应,并给用户展现动态和静态网页的程序,最终将静态和动态效果传送到用户的浏览器上。

 

解压Tomcat压缩包,Linux环境下,命令为tar zxvf

 

Bin目录下存在启动和终止TomcatSHBAT脚本。

Catalina脚本是Tomcat的主要脚本,用于执行Java命令,以调动Tomcat的启动类和终止类。命令执行Catalina,参数是run startstop。当以start调用Catalina时,启动Tomcat,将标准输出和错误流导出到$TOMCAT/logs/catalina.log中;run会让Tomcat保留当前标准输出与错误流。

Shutdown运行Catalina以停止Tomcat运行

startup运行Catalina以启动Tomcat运行

 

JDK1.3默认最大堆栈大小只有32MB。更改可以执行,java –Xmx=256M MyProg会执行MyProg的类文件,并给整个Java运行时进程分配256M的内存。

 

安装完毕,测试URLhttp://localhost:8080

 

2.配置

使用Tomcat时,服务器会从confwebapps目录中读取配置文件,并将文件写入logsworktemp中。

 

拷贝Tomcat到新目录启动新实例的话,需修改conf/server.xml文件中的portconnectorport没有被使用。可以使用netstat –a netstat –a tcp查看正在使用的端口号。

 

若想改变Tomcat默认的8080端口,需修改conf/server.xml文件中主connector,寻找类似protocol=”HTTP/1.1” connectionTimeout=”2000”一句对应的port

 

Tomcat默认请求来自8080端口,因为在8080端口打开了web服务器连接器,因此无论如何发送重定向,都会追加8080端口,除非在protocol=”HTTP/1.1” connectionTimeout=”2000”一句中加入proxyPort=”需要的端口号”.

 

JsvsJava Service的缩写。是Tomcat二进制发行版所带的服务封装器。

 

Tomcat的运行方式部分取决于所运行的JVM的配置信息。设置JVM启动的开关有:

-Xms设置JVM启动时堆栈内存大小

-Xmx设置JVM可扩展的最大内存大小。

-Djava.security.debug=all处于安全性,打开所有调试输出。

-verboseclass启用verbose class加载调试输出

-verbosegc启用verbose 垃圾回收调试输出

-Duser.language=en设置Tomcat绑定的语言

-Dfile.encoding=UTF-8设置Tomcat默认的文件编码格式

 

以大的或小的启动堆栈内存配置JVM,都会引发网页响应时间超出Java JVM堆栈的最大值的某种问题。因为Tomcat正提供响应时会占用大量的时间重新分配内存。如果不想出现这种问题,在设置-Xms-Xmx必须使其一致,从而保证JVM操作过程中不需要重新分配堆栈内存。

 

Tomcat绑定了JDT编译器,所以TomcatJRE或完整的JDK中运行时,可以编译并充当JSP页容器。即使JDKjavac编译器,Tomcat也不用,只需Tomcat绑定的Java编译器可以编译javac所能编译的JSP网页即可。(Ant默认使用JDK的编译器)

 

Tomcat使用领域的组来管理用户与密码。Tomcatconf/server.xml文件的领域(用户、角色、密码的集合)配置,及web应用程序的WEB-INF/web.xml中的security-constraint定义了如何存储用户和角色信息。

Web应用程序在web.xml中设定哪些用户组可以访问哪些资源。Tomcat管理员可以使用一个或多个领域实现获取用户、密码及角色信息。

 

当访问受保护的资源时,容器管理的验证方法可以控制确认用户身份的方式。Tomcat支持四种容器管理,不同类型采用不同的方式或趋势身份:基本验证和摘要验证(都是通过HTTP验证),表单验证(提交用户密码),client-cert验证(客户端数字证书验证)。

 

默认情况下,Tomcat发现servlet的类文件修改时,会自动重载该servlet。关闭该功能只需在web.xml中设定reloadable,并重启Tomcat

 

定制用户目录

~表示用户目录。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics