0

ポート 80 でサイトを起動できませんが、3000 でのみ起動できます。Nginx は標準のインデックス ページを表示します。Nginx の設定:

http {
  passenger_root /home/my_user_name/.rvm/gems/ruby-1.9.3-p125/gems/passenger-3.0.11;
  passenger_ruby /home/my_user_name/.rvm/wrappers/ruby-1.9.3-p125/ruby;

  include       mime.types;
  default_type  application/octet-stream;

  keepalive_timeout 65;

  server {
    listen 80;
    server_name www.my_site_name.com
    root /home/my_user_name/my_site_name/public;   # <--- be sure to point to 'public'!
    passenger_enabled on;
  }

}

コマンド:

passenger start -e production  # successfully started on port 3000

rvmsudo passenger start -e production -p 80 # error, see below

エラー:

*** ERROR ***
The address 0.0.0.0:80 is already in use by another process, perhaps another
Phusion Passenger Standalone instance.

If you want to run this Phusion Passenger Standalone instance on another port,
use the -p option, like this:

  passenger start -p 81

助けてくれてありがとう!

4

3 に答える 3

1

Nginxはポート80でリッスンしているものです。PassengerStandaloneはWebサーバーなしで使用するためのものです。Nginxを実行している場合も、Passengerを個別に起動することはありません。

Nginxを使用する乗客用のドキュメント

スタンドアロンの乗客用ドキュメント

于 2012-04-07T13:11:56.967 に答える
1

OK、初期設定は正しいので、次のコマンドを実行して Rails アプリを起動します。

rvmsudo passenger start -e production -p 80 --user="TYPE HERE USERNAME FROM SSH"
于 2013-11-21T04:14:43.360 に答える
1

location次のように、ポート 80 でサーバーにを指定する必要があると思います。

http {
  # ...

  server {
    listen 80;
    server_name www.my_site_name.com

    location / {
      root /home/my_user_name/my_site_name/public;
      passenger_enabled on;
    }
  }
}

jdl が指摘しているように、Passenger Standalone を実行する必要もありません。これらのコマンドはどちらも必要ありません。Nginx がそれを提供します。

于 2012-04-07T14:02:59.003 に答える