apache2:應用程式和儲存庫的 VirtualHost 配置

apache2:應用程式和儲存庫的 VirtualHost 配置

我在 CentOs 2.6 上使用 apache2 2.2。

我需要配置我的 apache2 以允許我使用我的 wildfly 應用程式和原始程式碼儲存庫。對於我的應用程序,我使用地址:domain.com,它會將我重定向到我的應用程式:localhost:8080/app1。使用連結domain.com/repos/app1 我希望能夠使用我的原始碼儲存庫(localhost/repos/app1)。兩個連結都使用連接埠 80。

透過以下配置,我可以使用我的應用程序,但無法訪問我的存儲庫,因為對其的請求被重定向到我的 Wildfly app1,當然,那裡顯示“沒有這樣的頁面”頁面。

<VirtualHost *:80>
   ServerName domain.com
   ServerAlias www.domain.com domain.com

   ProxyRequests Off
   ProxyPreserveHost On

   ProxyPass / http://localhost:8080/app1/
   ProxyPassReverse /  http://localhost:8080/app1/

   RewriteEngine   On
   RewriteCond     %{THE_REQUEST}  /app1/
   RewriteRule     ^/app1/(.*)$ /$1 [PT]

</VirtualHost>

如何解決這個問題?

答案1

如果我的理解正確,您希望從 2 個 URL 存取本機資料夾和在應用程式伺服器上執行的應用程式。如果您使用 ProxyPass / 那麼當您嘗試造訪 domain.com/repos 時,它將被代理到您的 Wildfly 應用程式。 domain.com/repos -> (wildfly)http://localhost:8080/app1/repos

您應該使用domain.com/app1 訪問您的應用程序,然後使用domain.com/repos 訪問您的存儲庫。那你就不需要 URL

ProxyPass /app1 http://localhost:8080/app1/
ProxyPassReverse /app1  http://localhost:8080/app1/

相關內容