概述集成 Windows 验证(Integrated Windows authentication)往往用于局域网环境中,因为需要使用服务器执行验证,被验证的用户也必须处于同一域内。为了能够自动验证用户,用户所用的客户端机器也必须处于同一域内。 可以利用以下几种方案来实现 Tomcat 下的集成 Windows 验证: 内建 Tomcat 支持。 使用第三方库,比如 Waffle。
Tomcat 服务应用Tomcat8 是一个服务应用,能使 Tomcat 8 以 Windows 服务的形式运行。 Tomcat 监控应用Tomcat8w 是一个监控与配置 Tomcat 服务的 GUI 应用。 可用的命令行选项为: //ES// 编辑服务配置 这是默认操作。如果没有提供其他选项,则调用它。但是可执行未见被重命名为servicenamew.exe。
简介对于大多数用例来说,默认配置下的 Tomcat 都是相当安全的。有些环境可能需要更多(或更少)的安全配置。本文统一介绍了一下可能影响安全性的配置选项,并适当说明了一下修改这些选项所带来的预期影响。目的是为了在评价 Tomcat 安装时,提供一些应值得考虑的配置选项。注意:本章内容毕竟有所局限,你还需要对配置文档进行深入研究。在相关文档中有更完整的属性描述。
Tomcat 快照Tomcat 快照位于 Apache Snapshot Repository。官方 URL 为: http://people.apache.org/repo/m2-snapshot-repository/org/apache/tomcat/ 隔段时间就会发布一个版本的快照,没有固定的周期。Tomcat 团队将保证快照改动的有效性。 Tomcat 版本Tomcat 的稳定版本(Stable release)会发布到 Central Maven Repositories。其 URL 为: http://repo2.maven.
简介Tomcat 可以使用许多附件组件。这些附加组件有可能是由用户在需要时创建的,或者是从镜像下载站下载而来的。 下载打开 Tomcat 下载页面,在“快速导航链接”(Quick Navigation Links)中点击“浏览”(browse)链接。在随后打开页面的 bin/extras 中可以找到附加组件。 构建附加组件使用 Tomcat 标准的 Ant 脚本的 extras 目标构建而成。
简介由于基于 APR 或 NIO API 来构建连接器,Tomcat 能在通常的阻塞 IO 之上提供一些扩展,从而支持 Servlet API。 重要说明:这些特性需要使用 APR 或 NIO HTTP 连接器。经典的 java.io HTTP 连接器 与 AJP 连接器并不支持它们。 Comet 支持Comet 支持能让 Servlet 实现:对 IO 的异步处理;当连接可以读取数据时,接收事件(而不是总使用阻塞读取);
前提设定针对本教程,假设你有一个开发主机,并有两个主机名:ren 和 stimpy。再来假设一个 Tomcat 运行实例,$CATALINA_HOME 表示它的安装位置,可能是 /usr/local/tomcat。 另外,本教程使用 UNIX 风格的分隔符及命令,如果你使用的是 Windows,则需要相应修改一下。 server.xml编辑 server.xml 文件的 Engine 部分,如下所示: <
简介Tomcat 可以使用 Apache Portable Runtime(APR) 来增强可扩展性与性能,并能更好地与原生服务器技术相集成。APR 是一种具有高度可移植性的类库,是 Apache HTTP Server 2.x 的核心。APR 具有许多用途,包括访问高级 IO 功能(比如 sendfile、epoll 和 OpenSSL)、系统级功能(随机数生成、系统状态,等等)以及原生进程处理(共享内存、NT 管道、UNIX 套接字)。
简介Tomcat 的内部日志使用 JULI 组件,这是一个 Apache Commons 日志的重命名的打包分支,默认被硬编码,使用 java.util.logging 架构。这能保证 Tomcat 内部日志与 Web 应用的日志保持独立,即使 Web 应用使用的是 Apache Commons Logging。
简介监控是系统管理中的重要环节。系统管理员的日常工作就包括:观察服务器的运行细节,获取统计数据,或者重新配置应用的某些内容。 启用 JMX 远程监控注意:该配置只适用于需用远程监控 Tomcat 的情况,使用同样的用户在本地监控 Tomcat 则不需要这么配置。 Oracle 的网站上介绍了如何在 Java 6 上配置 JMX 远程:http://docs.oracle.
简介选择适用于 Tomcat 的连接器是非常困难的。本文列出了目前版本的 Tomcat 所支持的连接器,可根据具体需要来选择使用。 HTTPHTTP 连接器是 Tomcat 默认配置好的,可立即使用。该连接器能实现最低的延时以及最佳的整体性能。 对于集群化来说,必须安装支持 Web 会话粘性的 HTTP 负载均衡器,以便将流量导引至多个 Tomcat 服务器上。
使用 JK 1.2.x 原生连接器请参考 JK 1.2.x 文档。使用 Apache HTTP Server 2.x请参阅 Apache HTTP Server 2.2 的 mod_proxy 文档。它能支持 HTTP 或 AJP 负载均衡。新版的 mod_proxy 也能适用于 Apache HTTP Server 2.0 ,但必须使用 Apache HTTP Server 2.2 的代码独立编译。
重要说明相关内容详情可以查看集群配置文档快速入门只需将下列信息放入 <Engine> 或 <Host> 元素即可实现集群: <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>上述配置启用了全局(all-to-all)会话复制功能,全局会话复制是指利用 DeltaManager 来只复制会话中的变更(Session Delta,也译作“会话增量”)。
什么是 DefaultSeveletDefaultSevelet 是处理静态资源的 Sevelet。在什么位置声明它?它在 $CATALINA_HOME/conf/web.xml 中被全局声明。默认形式的声明是这样的: $CATALINA_HOME/conf/web.xml <servlet> <servlet-name>default</servlet-name> <servlet-class> org.apache.catalina.servlets.
简介Tomcat 使用 JMX MBean 来实现自身的性能管理。 每个包里的 mbeans-descriptor.xml 是针对 Catalina 的 JMX MBean 描述。 为了避免出现 “ManagedBean is not found” 异常,你需要为自定义组件添加 MBean 描述。添加 Mbean 描述在 mbeans-descriptor.xml 文件中,你可以为自定义组件添加 Mbean 描述。这个 xml 文件跟它所描述的类文件同在一个包内。 <
简介使用 Tomcat 的标准配置,Web 应用可以请求服务器名称和端口号》。当 Tomcat 单独和 HTTP/1.1 连接器运行时,通常会报告指定在请求中的服务器名称,以及连接器正在侦听的端口号。servlet API:ServletRequest.getServerName() 返回接收请求的服务器主机名。 ServletRequest.getServerPort() 返回接收请求的服务器端口号。 ServletRequest.
简介CGI(通用网关接口)定义了一种 Web 服务器与外部内容生成程序的交互方式,这里所说的外部内容生成程序通常被称为 CGI 程序或 CGI 脚本。 当你使用 Tomcat 做为 HTTP 服务器,并且需要 CGI 支持时,可以在 Tomcat 中添加 CGI 支持。Tomcat 的 CGI 支持很大程度上能够跟 Apache 的httpd's 相兼容,但也存在一些局限(比如只有一个 cgi-bin 目录)。
简介SSI(服务器端嵌入)是一组放在 HTML 页面中的指令,当服务器向客户端访问提供这些页面时,会解释执行这些指令。它们能为已有的 HTML 页面添加动态生成内容,不需要通过 CGI 程序来或其他的动态技术来重新改变整个页面。 如果利用 Tomcat 作为 HTTP 服务器并需要 SSI 支持时,可以添加 SSI 支持。
Quick Start下列说明将使用变量名 $CATALINA_BASE 来表示多数相对路径所基于的基本目录。如果没有为 Tomcat 多个实例设置 CATALINA_BASE 目录,则 $CATALINA_BASE 就会设定为 $CATALINA_HOME 的值,也就是你安装 Tomcat 的目录。 在 Tomcat 中安装并配置 SSL/TLS 支持,只需遵循下列几步即可。详细信息可参看文档后续介绍。
简介Tomcat 8.0 使用 Jasper 2 JSP 引擎去实现 JavaServer Pages 2.3 规范。 Jasper 2 经过了重新设计,极大改善了上一版 Jasper 的性能。除了一般性的代码改进之外,还做出了以下改变: JSP 自定义标签池化 针对 JSP 自定义标签(JSP Custom Tags)实例化的 Java 对象现已可以被池化和重用,从而极大提高了使用自定义标签的 JSP 页面的性能。
关注时代Java