🍩

LB-リバプロ-アプリ構成でポートを変えたリダイレクトをしたい時

2020/09/17に公開

背景

下記のような構成
Client-(8443)->ALB-(80)->Nginx-(3000)->Rails
Railsからリダイレクトが走るとALBへ8443ポートでなく443ポートでアクセスがきてしまい、エラーになる

対策

下記を追加すればいけた

  proxy_set_header Host              $host;
  proxy_set_header X-Request-ID      $request_id;
  proxy_set_header X-Real-IP         $remote_addr;
  proxy_set_header X-Forwarded-For   $proxy_add_x_forwarded_for;
  proxy_set_header X-Forwarded-User  $remote_user;
  proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto;
  proxy_set_header X-Forwarded-Port  $http_x_forwarded_port;
+  proxy_set_header X-Forwarded-Host  $host:$http_x_forwarded_port;

参考

Discussion