ApacheのReverseProxyの設定

やりたいこと

  • 80ポート(Apache)へのリクエストで特定のホストでリクエストが来たら3000ポート(Webrick等)にアクセスさせる

環境

  • Ubuntu 12.04 Server

手順

mod_proxy,mod_proxy_httpの有効化

/etc/apache2/mods-enabledにproxy,proxy_httpがなければ下記実施

## proxy,proxy_httpモジュールを有効
$ sudo a2enmod proxy
$ sudo a2enmod proxy_http
VirtualHost設定
$ cd /etc/apache2/sites-available
$ sudo cp default hoge

hoge

<VirtualHost *:80>
    ServerName hogehoge.jp
    ProxyPass / http://localhost:3000/
    ProxyPassReverse / http://localhost:3000/
</VirtualHost>

有効にする

$ sudo a2ensite hoge
$ sudo /etc/init.d/apache2 restart
Client

hogehoge.jpをhostsかなんかに書いてアクセスをすると3000ポートにアクセスできるはず