Tag/mod_proxy

apache2.2でmod_proxyを使ってみる。

前々から試してみたいなぁ。って思ってた apache 2.2での mod_proxy を、 mod_wsgi 単独の apache を立てるついでに試してしまおうと思い、実験ついでにやってみた。 apache を2つも入れるの?ってツッコミはとりあえず無しの方向で。

tar で展開する時に、展開後の名前の指定の仕方が分からなかったので、とりあえずそのまま展開してコピーする時にリネームして回避。

$ cd
$ wget http://ftp.kddilabs.jp/infosystems/apache/httpd/httpd-2.2.4.tar.gz
$ tar zxf ./httpd-2.2.4.tar.gz
$ cp -R ./httpd-2.2.4 /usr/local/src/httpd-2.2.4-proxy
$ cp -R ./httpd-2.2.4 /usr/local/src/httpd-2.2.4-wsgi

aprapr-util は共通で使いたかったので apache とは別でインストールする事に。

まずは apr から。

$ cd /usr/local/src/httpd-2.2.4-proxy/srclib/apr
$ ./configure \
> --prefix=/usr/local/apr \
> --enable-maintainer-mode \
> --enable-threads

$ make
$ sudo make install

で、次は apr-util

$ cd /usr/local/src/httpd-2.2.4-proxy/srclib/apr-util
$ ./configure \
> --prefix=/usr/local/apr \
> --with-apr=/usr/local/apr

$ make
$ sudo make install

先にインストールした aprapr-util を使って apache をインストール。モジュールに関してはDSOでしこたま入れといて、 httpd.conf でオフる方向でやる事にした。

$ cd /usr/local/src/httpd-2.2.4
$ ./configure \
> --prefix=/usr/local/httpd_proxy \
> --enable-maintainer-mode \
> --enable-mods-shared=most \
> --enable-dav \
> --enable-dav-fs \
> --enable-dav-lock \
> --enable-cgi \
> --enable-cgid \
> --enable-cache \
> --enable-mem-cache \
> --enable-proxy \
> --enable-proxy-balancer \
> --enable-so \
> --with-apr=/usr/local/apr \
> --with-apr-util=/usr/local/apr

$ make
$ sudo make install

ひとまずエラー吐かずにインストールは完了。 ここで httpd.confListenServerName だけ編集して起動してみる。ちゃんと動いた。It works!!な画面がしっかり出る。上手くいったみたいなので、 mod_proxy な設定にしてみる。

ProxyRequests Off

<Proxy *>
    Order deny,allow
    Allow from all
</Proxy>

ProxyPass / http://google.com/
ProxyPassReverse / http://google.com/

ちゃんとgoogleにフォワーディングされるものの、なぜかリクエストが / だとフォワーディングされない。

これだとあんまり意味ないので、 DocumentRoot ディレクティブと、対になる Directory ディレクティブをコメントアウトしてみたらちゃんと動くようになった。ついでに LoadModule も色々試してみた結果、

  • authz_host_module
  • proxy_module
  • proxy_http_module

だけあれば最低限動いた。本当に最低限な訳ですが。ちゃんと動かすならもうちょっと必要。 Log とか rewrite とか。

次は mod_wsgiapache なのですがそれはまた近い?うちにでも。

Posted at: 
2007/06/17 05:30:18
0 Comments
0 TrackBacks
Tags: 
apache
mod_proxy
Trackback: 
http://humming.via-kitchen.com

Categories

Archives