リバースプロキシの一部無効化
Apache2.2のリバースプロキシで運用しているRailsアプリ内で、ドメインをそのままに一部をRails以外のコンテンツ(Wordpress等)で構成する必要が出てきた。 と言ってもそんなに複雑なものではないので、下位ディレクトリの一つを適当な場所にAliasしてやって、そこだけリクエストがmongrelに渡らないようにする。
httpd.conf(ないしはincludeされる設定ファイル内)で
ProxyRequests Off
ProxyPass / balancer://rails/ timeout=2
ProxyPassReverse / balancer://rails/
<proxy balancer://rails>
#以下略
となってる所に
ProxyPass /blog/ !
を挿入してやれば、/blog以下はapacheが直接リクエストを処理するようになる。 ProxyPassの前に入れたけど、順番はどこでも大丈夫かな? プロキシとは関係ないけど、以下も追加しておくのを忘れないように。 apache2.2はDeny from allがデフォルトなので、allowしてやらないと何も見えなくなる。
Alias /blog/ "/www/blog/"
<Directory "/www/blog/">
Order deny,allow
Deny from all
Allow from all
</Directory>
つーかそろそろnginxに移行するべきですかね?