1

パッセンジャーとnginxを実行しているUbuntuサーバーにRailsアプリケーションをデプロイしようとしています。サーバーはruby1.8で約1年間動作していましたが、最近1.9.3にアップグレードし(今回はRVMを使用)、その結果、すべてを再インストールする必要がありました。私は現在2つの問題に直面しています:

403禁止エラー

nginxサーバーを起動できましたが、railsアプリケーションにアクセスしようとすると、次のような403Forbiddenエラーが表示されます。

*2177 directory index of "/srv/myapp/public/" is forbidden

nxinxヘルプドキュメントを調べて、/srv/myapp/ディレクトリに適切なアクセス許可があることを確認しました。これはdeploy、nginxのワーカープロセスを所有するユーザーによって所有され、設定されchmod 755ます。

NginxとPassengerのインストールの問題

nginxサーバーを再起動すると、phusionpassengerのインストールに問題があることを示す別のエラーも表示されます。

Unable to start the Phusion Passenger watchdog because its executable (/usr/local/rvm/gems/ruby-1.9.3-p194/gems/passenger-3.0.13/agents/ PassengerWatchdog) does not exist. This probably means that your Phusion Passenger installation is broken or incomplete, or that your 'passenger_root' directive is set to the wrong value. Please reinstall Phusion Passenger or fix your 'passenger_root' directive, whichever is applicable.

root以外の(ただしsudoが有効になっている)ユーザーからpassenger gemを再インストールし、を使用してnginxを再インストールしましrvmsudo passenger-install-nginx-moduleたが、次のエラーが繰り返し発生します。

Your RVM wrapper scripts are too old. Please update them first by running 'rvm get head && rvm reload && rvm repair all'.

RVMのリロード(ありrvmsudoとなしの両方)を実行しましたが、それでもエラーが表示されます。なしでnginxインストールを実行しようとしましたが、ディレクトリ(nginxがインストールされている場所)をrvmsudo編集できなかったため、アクセス許可の問題が発生しました。/opt/nginx/インストーラーが必要なソフトウェアチェックに合格しなかったため、今ではそれほど遠くまでは行きません。

背景情報

これは私のnginxプロセスが現在どのように見えるかです:

  PID  PPID USER     %CPU    VSZ WCHAN  COMMAND
10174     1 root      0.0  18480 ?      nginx: master process /opt/nginx/sbin/nginx
29418 10174 deploy    0.3  18496 ?      nginx: worker process
29474 12266 1001      0.0   4008 -      egrep (nginx|PID)

私のインストールプロセス

さらに参照できるように、ステップバイステップガイドでインストールプロセスを文書化しています。新しいインストールがどのように設定されているかを確認してください。

4

1 に答える 1