在單一 Apache 伺服器上同時支援 PHP、Java Servlet (JServ)、JSP (ojsp) 與 SSL 加密傳輸,是早期企業級 Web 架構的經典需求。本文記錄在 RedHat 6.2 (Kernel 2.2.14-5, 256MB RAM) 環境下,將所有模組靜態編譯進 Apache 核心的完整建置過程。
作者明確選擇「PHP 4、JServ 皆編譯進 Apache,不採用 DSO 模組方式」。此決策雖增加重新編譯複雜度,但能:
| 組件 | 版本 | 來源 |
|---|---|---|
| Apache | 1.3.12 | https://www.apache.org |
| Apache JSSI | 1.1.2 | https://java.apache.org |
| Apache JServ | 1.1.2 | https://java.apache.org |
| mod_ssl | 2.6.0-1.3.12 | https://www.modssl.org |
| mm library | 1.0.9 | https://www.engelschall.com/sw/mm/ |
| RSAref | 2.0 | ftp://ftp.replay.com/pub/crypto/crypto/LIBS/rsaref/ |
./configure --with-ssl=... 整合 SSL 功能--with-jserv 參數編譯 Apache--with-apache=../apache_1.3.12 靜態連結JAVA_HOME、CLASSPATH 指向 JDK 1.1.8httpd.conf 虛擬主機ApJServMount、ApJServRoute 指令映射 JSP/Servlet 路徑libphp4.a 與 libjserv.a 同時連結無符號衝突現代架構建議採用:
此實戰案例展示了早期全棧整合的技術深度,對於理解 Web 伺服器架構演進、維護舊系統遷移具有重要參考價值。