Apache Portable Runtime (APR) 基於 Tomcat 的原生程式庫

目錄

簡介

Tomcat 可以使用 Apache Portable Runtime 為 HTTP 連接器提供基於 OpenSSL 的 TLS 實作。

這些功能讓 Tomcat 成為通用網頁伺服器,將能與其他原生網頁技術有更好的整合,並整體上讓 Java 作為一個成熟的網頁伺服器平台更具可行性,而不再只是專注於後端技術。

安裝

APR 支援需要安裝三個主要的原生元件

  • APR 程式庫
  • Tomcat 使用的 APR JNI 封裝器 (libtcnative)
  • OpenSSL 程式庫

Windows

tcnative-2 提供 Windows 二進位檔,這是一個靜態編譯的 .dll,包含 OpenSSL 和 APR。它可以從 這裡 下載為 32 位元或 AMD x86-64 二進位檔。在注重安全的生產環境中,建議使用個別的共用 dll 來處理 OpenSSL、APR 和 libtcnative-2,並根據安全公告視需要更新它們。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 生命週期監聽器組態

請參閱 偵聽器設定