1

乗客/nginxおよび403エラーに関連するSOに関するすべての質問と回答を読んだと思いますが、解決策につながるものはなかったので、ここに行きます...

Passenger (3.0.9) を搭載した Nginx (1.0.6) を Rails アプリで何ヶ月もの間、問題なく美しく実行しました。今夜、新しい機能を利用するために Passenger v3.0.9 から v3.0.12 にアップグレードすることにしました。提供された指示に従って (RVM を使用して) インストールを実行した後、Rails アプリが提供する URL にアクセスすると、恐ろしい 403 エラーが発生しました。nginx のログ ファイルでは、最初はパーミッション エラーだと思いました。

 directory index of "/home/SimfoUsers/public/" is forbidden, client: , server: , request: "GET / HTTP/1.1", host: ""

しかし、考えられるすべての許可を確認した後、それが問題だとは思いません。問題は、実際にはパッセンジャーが何らかの形で実際に実行されておらず、ページがnginxによって「通常の」Webページとして提供されていることだと思います。これは、index.html ファイルを Rails パブリック ディレクトリ (/home/SimfoUsers/public/) に追加すると、nginx がこのファイルを期待どおりに提供するという事実によってサポートされます。また、passenger-memory-stats を実行すると、ゼロのパッセンジャー プロセスが実行されています。nginx は必要なときにパッセンジャー プロセスを自動的に生成するべきではありませんか、それともここで何かが完全に欠けていますか?

nginx.conf ファイルの関連部分は次のとおりです。

http {
    passenger_root /usr/local/rvm/gems/ruby-1.9.2-p290@Simfo/gems/passenger-3.0.12;
    passenger_ruby /usr/local/rvm/wrappers/ruby-1.9.2-p290@Simfo/ruby;
    ...

    server {
        listen       80;
        server_name  simfo.info www.simfo.info;
        root         /home/SimfoUsers/public;
        passenger_enabled on;
    }
}

基本的に、以前に作業していた構成ファイルから変更した唯一のことは、passenger の新しいバージョン (3.0.12) を反映するように、passenger_root および Passenger_ruby ディレクティブを更新することです。したがって、これが構成ファイルの問題である場合、私はそれを理解するのに本当に途方に暮れています...

4

1 に答える 1

0

この質問を削除するか、それとも他の誰かが同じフラストレーションを抱かないように残しておくべきか、私にはわかりません。これは間違いなく顔の手のひらの瞬間です...

必死になって、ついにサーバーを再起動しました。その後、すべてがうまくいきました。ある時点で乗客関連のプロセスが停止し、自動的に再生成されなかったようです。nginx を新たにインストールして再起動すると、パッセンジャーが再起動されると思われるかもしれませんが、明らかにそうではありません。同様の問題を抱えている人への私の唯一のアドバイスは、ps aux | grep passenger(またはWindowsのタスクリスト?)を発行することです。乗客に関連する 1 つまたは 2 つのプロセスが表示されます。そうでない場合は、何かおかしなことが起こっている可能性があり、再起動も同様に役立つ可能性があります。

于 2013-02-15T08:57:29.620 に答える