Rails アプリケーションを Rails と Mongrel で稼働させようとしています。ブラウザでアプリケーションを指定すると、403 許可が拒否された Apache エラーが発生し続けます。
mongrel_rails インスタンスが実行されていることを確認できます (ポート 3001、3002、および 3003)。
ここに私のvhost.confがあります:
<Proxy balancer://mongrelcluster>
BalancerMember http://127.0.0.1:3001
BalancerMember http://127.0.0.1:3002
BalancerMember http://127.0.0.1:3003
</Proxy>
<VirtualHost *:80>
ServerName subdomain.domain.co.uk
ServerAlias subdomain.domain.co.uk
ProxyPass / balancer://mongrelcluster/
ProxyPassReverse / balancer://mongrelcluster/
ProxyPreserveHost on
</VirtualHost>
ここで何かが欠けているに違いないと思います。アプリケーションのルートを指す DocumentRoot ディレクティブを仮想ホストに追加しようとしましたが、役に立ちませんでした。
これは私のmongrelログからの出力です(REポート3003):
** 信号準備完了。用語 => 停止。USR2 => 再起動します。INT => 停止 (再起動なし)。** Rails シグナルが登録されました。HUP => リロード (再起動なし)。うまくいかない場合があります。** Mongrel 1.2.0.pre2 は 0.0.0.0:3003 2012-08-08 10:32:14 +0000 で利用可能: Dispatcher.dispatch の呼び出しエラー # /usr/local/rvm/gems/ruby-1.9.3-p194 /gems/mongrel-1.2.0.pre2/lib/mongrel/rails.rb:76:in
block in process' <internal:prelude>:10:in
synchronize' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mongrel-1.2.0.pre2 /lib/mongrel/rails.rb:74:inprocess' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mongrel-1.2.0.pre2/lib/mongrel.rb:165:in
block in process_client' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mongrel-1.2.0.pre2/lib/mongrel.rb:164 :ineach' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mongrel-1.2.0.pre2/lib/mongrel.rb:164:in
process_client' /usr/local/rvm/gems/ruby-1.9.3-p194/gems/mongrel-1.2.0.pre2/lib/mongrel.rb:291:in `ブロック (2 レベル) in run'
どこかでディスパッチにエラーがあることがわかります (このエラーは 3 番目と最後のポートでのみ一般的です)。私は走った
gem install dispatch
それでも私はまだこの問題を抱えています。問題が apache にあるのか、mongrel にあるのか、またはその両方にあるのかはわかりません。
任意のヒント?