1

デジタルオーシャンにVPSがあります。nginx+passenger を使用して、同じ VPS で複数の Rails アプリを実行できます。今、私はドメイン名をマップしたいと思います。このために私は何をすべきですか?

私のnginx.confファイル

   server {
    listen       80;
    server_name  localhost;

    location ~ ^/uvarsity(/.*|$) {
        alias /home/uvarsity/public$1;  # <-- be sure to point to 'public'!
        passenger_base_uri /uvarsity;
        passenger_app_root /home/uvarsity;
        passenger_document_root /home/uvarsity/public;
        passenger_enabled on;
        rails_env production;
    }
   location ~ ^/uvarsity-landing(/.*|$) {
        alias /home/uvarsity-lp/public$1;  # <-- be sure to point to 'public'!
        passenger_base_uri /uvarsity-landing;
        passenger_app_root /home/uvarsity-lp;
        passenger_document_root /home/uvarsity-lp/public;
        passenger_enabled on;
        rails_env production;
    }
 location / {
      root /home/amaravati/public;  # <-- be sure to point to 'public'
        passenger_enabled on;
    }
}
4

1 に答える 1

1

あなたが望むのは仮想ホスティングです。

ここでのコツはupstream、NGINX でセクションを定義して各アプリケーションのバックエンド サーバーを定義し、次にserverトラフィックをアップストリームに渡すセクションを定義することです。

localhostこれは、VirtualBox で実行されている仮想マシンにリダイレクトされる仮想ホストを提供するために使用した非常に単純な例です。私は使用していましたが、唯一の要件は、ブラウザーが構成のブロックの設定とlocalhost一致する名前でホストを要求することです。 server_nameservernginx

upstream apache {
        server 192.168.70.1:1025;
}

server {
        server_name localhost;
        location / {
                proxy_pass http://apache;
        }

}
于 2014-03-08T08:19:53.323 に答える