2

時間を検索しようとしていますが、解決策が見つからないようです。nginx経由で1つのサーバーに複数のアプリを設定したい。現在の nginx.conf は次のとおりです。

server {
    listen 80;
    server_name mydomain.co;
    root /mydomain/current/public;
    passenger_enabled on;
    rails_env production;
}

server {
    listen 80;
    server_name testing.mydomain.co;
    root /mydomain-test/current/public;
    passenger_enabled on;
    rails_env test;
}

正しい環境 (テスト) を提供しますが、正しいコードベースを提供しません。ディレクトリ mydomain-test を ssh 経由で確認したところ、最近のコードが含まれていますが、nginx によって提供されていません。

基本的に、私が欲しいのは:

mydomain.co to serve /mydomain/current/public
testing.mydomain.co to serve /mydomain/current/public

これはどのように正しく行われますか?

4

1 に答える 1

0

ルート ディレクティブは location セクションにある必要があると思います。Railsディレクティブとpassenger_enabledディレクティブについてはよくわかりませんが、残りは私が使用して機能するものと似ています。index スクリプトも指定するのが最善かもしれません (index.php に設定していますが、必要に応じて変更します)。

変更を加えたら、nginx を再起動してください。

server {
    listen 80;
    server_name mydomain.co;
    location / {
        root /mydomain/current/public;
        index  index.php;
    }
    passenger_enabled on;
    rails_env production;
}

server {
    listen 80;
    server_name testing.mydomain.co;
    location / {
        root /mydomain-test/current/public;
        index  index.php;
    }
    passenger_enabled on;
    rails_env test;
}
于 2013-08-26T14:16:20.487 に答える