[Node.js] Apache 연동 후, request protocol이 항상 http로 나타나는 문제

devyang97·2020년 8월 25일
0

상황

Apache와 Node.js 프록시 연동 후, protocol이 http/https에 따라 코딩을 다르게 하고 싶었는데, 브라우저 상에서 https일 때에도 req.protocol이 http로 리턴되는 현상이 있었다.

해결

  1. Node.js 앱에서 app.set('trust proxy', true); 설정
  2. Apache 설정에서 RequestHeader 셋팅
<VirtualHost *:443>
...
RequestHeader set X-Forwarded-Port "443"
RequestHeader set X-Forwarded-Proto "https"
...
</VirtualHost>

0개의 댓글