2

わかりました、私はそれを得ることができないようです、私はnginxフォーラムをチェックしました、そこでもあまり助けにはなりません。これは簡単だと思いました。定義されたサブドメインを別のURL/ポートに移動させたい。すなわち

DNS site.com goes to 192.168.1.1 w/ masking
DNS www.site.com goes 192.168.1.1 w/ masking
DNS red.site.com goes 192.168.1.1 w/ masking
DNS blue.site.com goes to 192.168.1.1 w/ masking

site.comとwww.site.comを通常どおり機能させたいのですが、red.site.comを192.168.1.2:5000に移動し、blue.site.comを192.168.1.2:6000/temp/に移動させたいです。

などなど...アドレスバーに何が表示されるかはわかりません。red.site.comのままにしておくといいと思いますが、重要ではありません。プロキシパスでURL書き換えを試しましたが、明らかに何か間違ったことをしています。これも可能ですか?

4

3 に答える 3

5

Proxy passディレクティブを試しましたか?

のようなもので

server {
  server_name red.site.com;

  location  / {
    proxy_pass http://192.168.1.2:5000;
  }
}
server {
  server_name blue.site.com;

  location  / {
    proxy_pass 192.168.1.2:6000/temp/;
  }
}

動作するはずです。転送するヘッダーなどのドキュメントを参照してください...

于 2013-02-16T14:38:02.000 に答える
3

必要な数の仮想サーバーを作成します。チェックインして、サーバーを...(または構成がここにある場所)に/etc/nginx/sites-availableコピーします。次に、に移動してシンボリックリンクを実行しますdefaultred/etc/nginx/sites-enabled

ln -s ../sites-available/red

他のサーバーでも同じことを行い(...)、nginxを再起動するか、構成killall -HUP nginxを再読み込みします。

基本的に、仮想サーバーでは、そのサーバーに固有の構成を指定します。

たとえば、red

server {
  listen 5000;
  server_name red.site.com;
  root /var/www/docs/red;
  ...
}

またはfor (ルートに追加されていることにblue注意してください)temp

server {
  listen 6000;
  server_name blue.site.com;
  root /var/www/docs/somewhere/temp;
  ...
}

IPも指定する必要がある場合は、

  listen 192.168.1.2:5000;

の場合red、または6000の場合blue

ディレクティブを説明するいくつかの文学。

于 2013-02-16T15:05:36.340 に答える