基于 Apache Portable Runtime (APR) 的 Tomcat 原生库
目录
简介
Tomcat 可以使用 Apache Portable Runtime 为 HTTP 连接器提供基于 OpenSSL 的 TLS 实现。
这些功能使 Tomcat 成为一个通用的 Web 服务器,将与其他原生 Web 技术更好地集成,并使 Java 成为一个成熟的 Web 服务器平台,而不仅仅是一个以后端为中心的技术。
安装
APR 支持需要安装三个主要的原生组件
- APR 库
- Tomcat 使用的 APR 的 JNI 包装器 (libtcnative)
- OpenSSL 库
Windows
Windows 二进制文件提供 tcnative-2,这是一个静态编译的 .dll,包含 OpenSSL 和 APR。它可以从 这里 下载为 32 位或 AMD x86-64 二进制文件。在注重安全的生产环境中,建议使用单独的 OpenSSL、APR 和 libtcnative-2 共享 dll,并根据安全公告按需更新它们。Windows OpenSSL 二进制文件链接自 官方 OpenSSL 网站 (参见相关/二进制文件)。
Linux
大多数 Linux 发行版都会附带 APR 和 OpenSSL 的软件包。然后需要编译 JNI 包装器 (libtcnative)。它依赖于 APR、OpenSSL 和 Java 头文件。
要求
- APR 1.6.3+ 开发头文件 (libapr1-dev 包)
- OpenSSL 1.1.1+ 开发头文件 (libssl-dev 包)
- 来自与 Java 兼容的 JDK 1.4+ 的 JNI 头文件
- GNU 开发环境 (gcc, make)
包装器库源代码位于 Tomcat 二进制捆绑包中,位于 bin/tomcat-native.tar.gz
存档中。安装完构建环境并解压缩源代码存档后,可以使用以下命令编译包装器库(从包含配置脚本的文件夹中):
./configure && make && make install
APR 组件
一旦库正确安装并可供 Java 使用(如果加载失败,将显示库路径),Tomcat 连接器将自动使用 APR。
APR 生命周期监听器配置
参见 监听器配置。