Mod-Proxy

帶有 mod_jk 的 Tomcat 7

  • April 30, 2013

我在決定是否使用 mod_jk 或 mod_proxy 來設置具有 Apache 2 和 Tomcat 7 的負載平衡系統時處於十字路口。我閱讀了通常的比較,即 mod_jk 更強大但更難配置等,但我讀到的只是有點過時(2007-2010),根據我目前的要求,我可以選擇任何一種方式。

現在查看有關連接器的 Tomcat 7 文件!我看到他們基本上棄用了除 mod_proxy 之外的所有東西:

其他支持 AJP 的本機連接器可能會工作,但不再受支持。

那麼這是否意味著新的用途應該與 mod_proxy 一起使用?

mod_proxy 是 Apache HTTP 伺服器模組,而不是 Apache Tomcat 模組。

這個頁面的意思是 Tomcat 支持 JK1.2 或 Apache HTTP 中 mod_proxy 模組提供的 AJP 協議。

從歷史上看,您必須使用 mod_jk 為 Apache HTTP 伺服器提供 AJP1.3 支持,從 Apache HTTP 2.2 開始,現在在 mod_proxy 模組中提供 - 請參閱http://httpd.apache.org/docs/2.2/ mod/mod_proxy.html其中指出:

該模組為 Apache 實現了代理/網關。它實現了 AJP13(Apache JServe 協議版本 1.3)、FTP、CONNECT(用於 SSL)、HTTP/0.9、HTTP/1.0 和 HTTP/1.1 的代理功能。

這為您提供了幾個選擇:

  1. 在 Tomcat 中使用 HTTP 連接器並讓終端客戶端直接連接到它。
  2. 使用 Tomcat 中的 HTTP 連接器並通過 HTTP mod_proxy HTTP 代理功能對此進行代理。
  3. 在 Tomcat 中使用 AJP1.3 連接器,並通過 HTTP mod_proxy AJP 代理功能對此進行代理。
  4. 使用 Tomcat 中的 AJP1.2 連接器,並使用 Apache 中的 HTTP mod_jk AJP 模組連接到該連接器。

我的建議是選擇選項 3。

有關在 Apache 中配置此資訊的特定頁面是http://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html

引用自:https://serverfault.com/questions/503834