Linux

Tomcat 7.0.42 Manager 奇怪的行為

  • February 24, 2014

各位早上好!

我今天正在玩我全新的 tomcat 安裝,一切都執行得非常順利,除了使用帶有虛擬主機的管理器時我得到了一個奇怪的反應。

當我嘗試在我的虛擬主機 A1 上部署 web 應用程序時,問題會彈出它非常有效,上傳工作但不是應用程序的啟動。

當我嘗試在 vhost A2 上部署另一個 webapp 時根本無法正常工作,我什至無法上傳存檔。

奇怪的是兩個虛擬主機都使用託管在 ${Catalina.base}/conf/Catalina/ 下的相同 manager.xml 配置文件

$$ engine $$/$$ hostname $$/manager.XML 該文件正在呼叫我的主要經理,而同一位經理正在完美地工作。

當我說管理器在我的虛擬主機上奇怪地崩潰時,這是因為它返回一條 503 錯誤消息,要求我在 tomcat-users.xml 上設置 tomcat 使用者角色和密碼,但關鍵是這個文件已經設置為預設值由tomcat提供的文件。

如果我直接在主機 appbase / docbase 目錄上上傳我的應用程序,由於 server.xml 配置文件上的 AutoDeploy 和 DeployOnStartup 指令,它可以完美執行。

因此,如果你們中的任何人有提示,我會接受它;-)

所以,我自己解決了我的問題,然後我會解釋它:

Tomcat 管理器和預設應用程序受 CSRF 保護。由於我在中繼客戶端 IP/域資訊的反向代理後面使用 VHost,tomcat 發現對他來說太奇怪了,然後拋出 403 響應。

解決方案:不要中繼 Origin IP/domain。

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