2017-04-18 3 views
1

localhost:10000へのproxy_passを使用してポート80にnginxを使用して、ポート10000のubuntuサーバーでノード+エクスプレスWebサイトを実行しています。私の問題は、エクスプレスでホストを尋ねると、私のドメイン名の代わりにlocalhostを返すということです。私は、異なるアプリケーションを指しているマシン上のいくつかのドメインを管理することができますので、nginxプロキシを使用します。ドメインの代わりにlocalhostを返すNode + Express + NGINXアプリケーション

nginxでproxy_passを使用している間に、ノード+エクスプレスサーバーに元のホスト名を保持する方法はありますか?

答えて

1

デフォルトでは、nginxは、アップストリーム要求のHostヘッダーをproxy_passステートメントに現れるホスト名に設定します。この場合localhost

proxy_set_headerディレクティブを使用してHostヘッダーを明示的に設定する必要があります。

例えば、私はいつもこのグループを設定します。

proxy_set_header Host    $host; 
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
proxy_set_header X-Forwarded-Proto $scheme; 
proxy_set_header Accept-Encoding ""; 
proxy_set_header Proxy    ""; 

は、より多くのためにthis documentを参照してください。

+0

あなたは、紳士と学者です。 –

関連する問題