したがって、次の2つの構成があります。
一方では、バックエンドサーバー:
<VirtualHost *:80>
ProxyPreserveHost On
ServerName localhost
ProxyPass /backend http://some_remote_ip:7000/backend
ProxyPassReverse /backend http://some_remote_ip:7000/backend
ProxyPassReverseCookiePath / /backend
ProxyPassReverseCookieDomain some_remote_ip localhost
</VirtualHost>
一方、フロントエンドサーバー:
<VirtualHost *:80>
ProxyPreserveHost On
ServerName localhost
ProxyPass /excluded !
ProxyPass / http://127.0.0.1:9000/
ProxyPassReverse / http://127.0.0.1:9000/
</VirtualHost>
これらを.conf
ファイルにまとめると、ファイル内で最初に書き込まれたものだけが機能するので、技術的にはどちらも正しいです。
だから私の質問は、複数のProxyPass
エントリを同じVirtualHost
設定?
PS:アクセスできるようにする必要があります
localhost/backend
のバックエンドlocalhost
のフロントエンド問題は、同じ仮想ホスト(localhost
)に複数のVirtualHostセクションがあるため、Apacheが1つだけ選択することです。これらの構成を連携させる場合は、ProxyPass
ディレクティブを単一のVirtualHost構成に配置する必要があります。
<VirtualHost *:80>
ProxyPreserveHost On
ServerName localhost
ProxyPass /backend http://some_remote_ip:7000/backend
ProxyPassReverse /backend http://some_remote_ip:7000/backend
ProxyPassReverseCookiePath / /backend
ProxyPassReverseCookieDomain some_remote_ip localhost
ProxyPass /excluded !
ProxyPass / http://127.0.0.1:9000/
ProxyPassReverse / http://127.0.0.1:9000/
</VirtualHost>