redMine&Apache(Proxy)
redMineをApacheと組み合わせる方法としては、FastCGIを使う以外にもApacheをリバースプロキシとして使用するというのがあります。この方法を利用すると、WEBrick等の別のhttpサーバ上でRubyアプリケーションを動作させながら、外部に公開するのはApacheだけという使い方ができます(なお、ここでは同一端末上で実行していると仮定します)。
httpd.confの
#LoadModule proxy_module modules/mod_proxy.so
#LoadModule proxy_http_module modules/mod_proxy_http.so
のコメントを解除。
Apacheのリクエストを全てWEBrickに転送するのであれば、
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
の2行を適当な場所に書いておけばいいのですが、これをやってしまうとSubversion等との併用を行うことができなくなってしまいます(http://localhost:8080/svn/Hogeといったリクエストも全てWEBrickに転送されてしまうので)。なので、汎用性(?)を考えるとNameVirtualHostを利用して、redMine用のホスト名を別途定義してしまうのが楽かと。
例えば、http://redmine:8080/のリクエストをWEBrickに転送するのであれば、
NameVirtualHost *:8080
<VirtualHost *:8080>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot C:/apache2/htdocs
ServerName testsvr
ErrorLog logs/testsvr-error_log.log
CustomLog logs/testsvr-access_log.log common
</VirtualHost>
<VirtualHost *:8080>
ServerAdmin webmaster@dummy-host.example.com
DocumentRoot C:/apache2/htdocs
ServerName redmine
ErrorLog logs/redmine-error_log.log
CustomLog logs/redmine-access_log.log common
ProxyPass / http://localhost:3000/
ProxyPassReverse / http://localhost:3000/
</VirtualHost>
といった感じでしょうか。
アクセスするクライアント側のhostsファイルにredmineを登録して名前解決できるようにしておく必要がありますが、http://testsvr:8080/なら通常のApache側の処理(Subversionリポジトリへのアクセス等)を、http://redmine:8080/ならWEBrick等でredMineの処理を行うことができるようになります。もちろん、WEBrickを起動しておく必要はありますが。
ちなみに、InstantRailsに同梱されているApache用のhttpd.confにおいても、Proxyで処理を振り分けているようです。
WEBrick側でredMineのルートURLを変更することができると、ホスト名を分ける必要はないんですけどねぇ・・・。
【補足】
僕の環境ではFastCGIを導入して以降、WEBrickで動作させた場合を含めてruby.exeが頻繁に落ちる(WEBrickの場合、Segmentation faultが発生する)ので、RubyForApacheをアンインストールすると安定して動作するようになりました。Apache/Ruby/mod_fastcgiの各コンポーネント間のバージョンのかねあいなんでしょうかね?
ただ、Proxyを使用するようにすれば、とりあえずFastCGIを使用しなくてもまともなレスポンスで稼働させることができそうな感じです。
「Subversion・Trac・etc.」カテゴリの記事
- TortoiseSVNで特定のフォルダーを取得しない(2011.10.31)
- TortoiseSVN 1.7 And Windows7 Library(2011.10.19)
- Trac>DiscussionPluginへのメールアドレスの登録(2011.07.13)
- Could not execute PROPPATCH.(2011.07.02)
- TortoiseSVNとSSLクライアント証明書(パスワードが保存されない)(2011.06.28)


















![アスキー: UNIX MAGAZINE (ユニックス マガジン) 2008年 01月号 [雑誌]](http://ecx.images-amazon.com/images/I/11Z7w19zJ3L.jpg)













Comments