質問: apacheのmod_proxyを使用して リバースプロキシを実現しようとしています。 httpd.confに下記のように記述すると 上手くいくのですが、 ProxyPass /pon/ http://localhost/index-pon.html ProxyPassReverse /pon/ http://localhost/index-pon.html ProxyPass /ponpon/ http://localhost/index-ponpon.html ProxyPassReverse /ponpon/http://localhost/index-ponpon.html 下記のように記述すると上手くいきません。 ProxyPass /pon/ http://localhost/index-pon.html ProxyPassReverse /pon/ http://localhost/index-pon.html ProxyPass / http://localhost/index-ponpon.html ProxyPassReverse / http://localhost/index-ponpon.html この記述にした場合、 リクエストに対して、400Badrequestが返され、 Your browser sent a request that this server could not understand と表示されます。 原因、解決方法をご教授ください
回答: プロキシ先が localhost になってますけど、自己ループ起こしてたりしませんか。 `ProxyPass / http://localhost/index-ponpon.html` ← この記述だとサイトの全ページがプロキシ対象になるので、どのページにアクセスしてもループということになると思います。 ※「プロキシ先が違うサイト」として扱うのなら、localhost であっても VirtualDomainを分けるか、「同じサイト内での書き換え」ということなら Alias の方にするとか。