Passenger のドキュメントによると、デプロイするアプリごとに新しい vhost を作成します。root
アプリのパブリック ディレクトリにサイトを指定し、passenger_enabled
ディレクティブを追加します。Apache でデプロイするのとまったく同じです。
http {
...
server {
listen 80;
server_name www.mycook.com;
root /webapps/mycook/public;
passenger_enabled on;
}
...
}
詳細はこちら: http://www.modrails.com/documentation/Users%20guide%20Nginx.html#deploying_a_ror_app
質問2に関して。再起動は、何をしようとしているのかによって異なります。を使用するディストリビューションを使用していると仮定しますinit.d
これらは、異なる種類の「再起動」を行う 3 つのケースです。
Nginx の設定に問題があります。もしくは挙動がおかしい。したがって、次のように Nginx サービスを再起動します。/etc/init.d/nginx restart
次のケースは、パッセンジャー モジュールを使用して Nginx にデプロイされた rails または sinatra アプリがある場合です。そして、サーバーにプッシュしたばかりの変更をリロードさせたいとします。Passenger はtmp/restart.txt
アプリケーション内のファイルを監視します。したがって、単に実行するだけですtouch tmp/restart.txt
。アプリのフォルダーにcdすると、Passengerにアプリケーションをリロードするように指示されます。
再起動/リロードの最後のケースは、Nginx のリロードです。これは、VHOST を追加または変更するときに使用します。
/etc/init.d/nginx reload
. これにより、接続をドロップすることなく、仮想ホストやその他の構成をリロードできます。
Passenger Documentation をざっと見てください。非常に詳細です。nginx-passenger ドキュメント