2

ローカルで実行している Ruby on Rails アプリがあります。次に、nginx サーバーもローカルで実行します。現在、接続は HTTP 経由で正常に機能していますが、HTTPS 経由で接続しようとすると、nginx から「502 Bad Gateway」エラーが発生します。証明書が正しく機能していないときは別のエラーが発生したため、証明書が正しく機能していると確信していますが、nginx 構成に何か問題がありますか? 構成は次のとおりです。

http {
  access_log off;
  #include mime.types;
  default_type application/octet-stream;

  upstream mydomain.com {
    server 127.0.0.1:8080;
  }

  server {
    listen 80;
    server_name local www.local;
    location / {
      proxy_pass http://mydomain.com;
    }
    add_header Pragma "no-cache";
  }

  server {
    listen 443;
    server_name local www.local;
    ssl on;
    ssl_certificate /Users/daise/projects/mydomain/run/ssl/server.crt;
    ssl_certificate_key /Users/daise/projects/mydomain/run/ssl/server.key;
    location / {
      proxy_set_header X-FORWARDED_PROTO https;

      #proxy_pass https://mydomain.herokuapp.com;
      proxy_pass https://mydomain.com;
    }
    add_header Pragma "no-cache";
  }
}

また、/etc/hosts ファイルをスプーフィングして 127.0.0.1 に解決することも付け加えておきます。

4

1 に答える 1

0

変化する

 proxy_pass https://mydomain.com;

 proxy_pass http://mydomain.com;

あなたのsslはnginxで終了しています。したがって、https を使用してアップストリーム サーバーに接続する必要はありません。

[もっと見る]

構成ファイルのタイプミスにも注意してください。

proxy_set_header X-FORWARDED_PROTO https

proxy_set_header X-FORWARDED-PROTO https;
于 2013-03-29T01:47:23.563 に答える