28

私のnginxサーバーは、実際にはノードバックエンド(ポート3000でリッスン)を簡単にプロキシしています:

location /api/ {
proxy_pass http://upstream_1;
}

ここで、upstream_1 は nginx.conf (ポート 3000) で定義されたノード クラスターです。

http 接続を介して SSL を追加する必要があるので、次の質問があります: nginx を構成して ssl を有効にするだけですか? そして、それは自動的にリクエストを「暗号化解除」し、それを暗号化せずにノードに渡します。ノードはそれを正常に処理できますか? または、ssl もサポートするように Nodejs を構成する必要がありますか?

4

1 に答える 1

76

nginx を使用して SSL を処理している場合、ノード サーバーは単に http を使用します。

    upstream nodejs { 
          server 127.0.0.1:4545 max_fails=0; 
    } 

   server { 
      listen 443; 
      ssl    on; 
      ssl_certificate    newlocalhost.crt; 
      ssl_certificate_key     newlocalhost.key; 
      server_name nodejs.newlocalhost.com; 

      add_header Strict-Transport-Security max-age=500; 

      location / { 
        proxy_pass  http://nodejs; 
        proxy_redirect off; 
        proxy_set_header Host $host ; 
        proxy_set_header X-Real-IP $remote_addr ; 
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for ; 
        proxy_set_header X-Forwarded-Proto https; 
      } 
   }
于 2012-04-29T20:33:40.157 に答える