Posted by & filed under server, unix.


デフォルトで起動しているデーモンのURLにポート番号が入っているのが煩わしく感じたのでバーチャルホストにmod_proxyでリダイレクトの設定をした。

もともと、前のサーバー運用中に、LAN内の新サーバーにもアクセスできるように設定していたのだけれど、今回設定方法をど忘れしてしまっていたので、忘れないようにメモ。

まず、Debian(Ubuntu)はデフォルトではmod_proxyが有効でないので、とりあえず有効にしてやる。

$ sudo a2enmod proxy
$ sudo a2enmod proxy_http
$ sudo a2enmod proxy_connect

デフォルトで有効でないせいか、ProxyディレクティブにAllowの記述がないので追加。(/etc/apache2/mods-available/proxy.conf)

<Proxy *>
    AddDefaultCharset off
    Order deny,allow
    Deny from all
    Allow from all
    #Allow from .example.com
</Proxy>

/etc/apache2/sites-availableにバーチャルホストの設定とリバースプロキシの設定を記述。

<VirtualHost *:80>
    ServerName hogehoge.sample.com
    ServerAdmin webmaster@sample.com

    # フォワードプロキシ無効
    ProxyRequests off
    # ローカルの仮想パス リモートサーバーアドレス
    ProxyPass / http://localhost:8888/
    <Location />
        ProxyPassReverse http://localhost:8888/
        # Cookieのドメインを書き換える
        ProxyPassReverseCookieDomain localhost hogehoge.sample.com
        # Cookieのパスを書き換える
        ProxyPassReverseCookiePath / /
        Order allow,deny
        Allow from all
    </Location>
</VirtualHost>

最後にバーチャルホスト設定をa2ensiteで有効にしてApacheを再起動して終了。

<参考>

http://httpd.apache.org/docs/2.2/ja/mod/mod_proxy.html