Apacheのプロキシ設定に関する質問
解決したいこと
Dockerで8080番ポート、ホストで80番ポートでApacheを多重起動させています。(Dockerではphp-apacheのイメージを利用しています。)
Docker側でVirtualHostを設定しているサイトにホスト側からhtaccessを使用してProxyでアクセスできるようにしたいです。
理由としては、他にも8081番、8082番で複数バージョンのPHPコンテナを起動しているのですが、それらをサイト毎に切り替えたいと考えているためです。
現状の設定
Docker側のVH設定
<VirtualHost *:8080>
ServerAlias *.example.com
VirtualDocumentRoot /home/www/%1
</VirtualHost>
ホスト側のVH設定
(Proxy設定箇所をhtaccessで設定できるようにしたい)
<VirtualHost *:80>
ServerAlias *.example.com
VirtualDocumentRoot /home/www/%1 # <- htaccessを使う場合に設定
ProxyPreserveHost on
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
</VirtualHost>
発生している問題
htaccessで下記設定を行うと、
例えば「http://test.example.com
」にアクセスした際「http://127.0.0.1:8080
」に接続されてしまい、Dockerコンテナ内の_default_
のVHに接続されてしまいます。
RewriteEngine on
RewriteRule (.*) http://127.0.0.1:8080/$1 [P]
curlコマンドで
curl --proxy http://127.0.0.1:8080 http://test.example.com
で接続するのと同様の設定をhtaccessで行いたいです。
自分で試したこと
上記のVH設定やhtaccess設定
0