簡體   English   中英

Mod_jk 和 Tomcat 卡在發送回復

[英]Mod_jk and Tomcat stuck at Sending Reply

目前,工作中的服務器性能不佳,其設置方式也不理想。 出於這個原因,我試圖找到一種新的方法來做一些希望對性能和部署都有幫助的事情。

我決定采用的方法是為我們的 webapps 使用 tomcat 實例(目前有兩個,因此每個 webapp 都有一個實例),並使用 Apache 作為“前端”。 我沒有這方面的經驗,所以我在這里和那里遇到問題是正常的,但到目前為止我已經設法解決了這個問題。

我期望從 mysite.com 索引頁面重定向到 mysite.com/service1 或 mysite.com/service2。 Service1 設置在測試服務器的 8080 端口和 service2 的 8081。我昨天安裝了 Apache2 和 mod_jk 並設置了 apache 與 mysite.Z4D236D9A204102C0ZFE6ADB1 的內容今天我開始配置,結果如下:

worker.properties

worker.list=s1

worker.s1.type=ajp13
worker.s1.port=8009

#host is localhost by default according to the documentation

jk.load

LoadModule jk_module /usr/lib/apache2/modules/mod_jk.so

JkWorkersFile /etc/apache2/workers.properties

JkLogFile /var/log/apache2/mod_jk.log
JkLogLevel debug
JkMount /service1/* s1

Service1的服務器。xml連接器(rest是默認的)

<Connector protocol="AJP/1.3" port="8009" redirectPort="8443" />

我有更多,但由於錯誤,我退后一步,現在只嘗試了一個 tomcat。 我將添加第二個 tomcat 和一個負載均衡器。

好的,那是怎么回事?

我可以毫無問題地訪問我們系統的服務器和索引頁面。 問題是當我嘗試重定向到 service1 時。 它只是加載而沒有響應,但是如果我嘗試通過端口 8080 直接訪問 service1,它可以正常工作(我厭倦了注釋掉這個連接器。沒有運氣)。

查看服務器狀態,我看到請求停留在發送回復,並且在 mod_jk.log 中我看到工作人員正確匹配請求。 因此,雖然我的配置似乎是正確的,但在兩者之間發生了一些事情。 我真的不知道它是否與 Apache、Tomcat 或 Mod_jk 有關。 我還嘗試遵循幾個如何做到這一點的指南,但所有這些都讓我進入了 404。 環顧四周,不幸的是,ServerFault 並沒有透露太多信息,所以我現在就問這個問題。

我錯過了什么嗎? 我應該只使用另一種方法嗎? 我對此很陌生,現在我很茫然。 配置和日志顯示並沒有什么問題(乍一看,至少......)所以我完全確定我的案例 scneario 是否可以使用 mod_jk ......誠實地運行它並嘗試使用代理是在這一點上非常誘人,但如果我是,我寧願知道我錯在哪里。

Additional info: Running on Ubuntu Server 18.04, lastest apache2 and mod_jk avaliable from apt (as of Apr 14), java 1.8 and Tomcat 8.5.64.

去年 Tomcat 發生了變化(從版本8.5.51和版本9.0.31 開始),它為 AJP 連接器引入了一個secretRequired屬性,默認值為true (參見文檔)。 因此,您可以:

  • 在 AJP 連接器和mod_jk之間添加共享密鑰

  • 或將secretRequired="false"添加到 AJP 連接器:

     <Connector protocol="AJP/1.3" port="8009" secretRequired="false" redirectPort="8443" />

備注: AJP 是一個非常古老的協議,很少使用。 由於您的安裝是相當新的,您可以考慮直接使用 HTTP(參見this talk )。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM