워드프레스 SSL 적용시 502 bad gateway 리디렉션한 횟수가 너무 많습니다 해결 방법

워드프레스

얼마전 익스트림 매뉴얼 블로그에 SSL 보안인증서를 설치하면서 프로토콜이 http 에서 https 로 변경되었습니다.

서버 환경은 서버단에서 설치와 세팅을 마친 다음 재시작을 했는데 설정에 문제가 없음에도 불구하고 ‘리디렉션한 횟수가 너무 많습니다.’ 메시지가 나와 웹서버 문제인줄 알고 30분 정도를 삽질했네요.

더군다나 웹서버 앞단에 NGINX 리버스 프록시가 있기 때문에 웹서버와 리버스 프록시 설정을 번갈아서 봐야되서 더욱 해깔렸는데요.

1

웹서버 세팅 구조가 NGINX(리버스 프록시, SSL 적용) > NGINX(웹서버, http) 로 되어 있기 때문에 https 에서 http 로 넘어가는 과정에서 생기는 문제로 판단.

서버단에서만 이리저리 찾다가 아무리 봐도 서버단에 문제는 아닌것 같아 리디렉션 순환 오류라면 워드프레스에 문제가 있겠다 싶어 검색해 보니 해답을 얻었습니다.

if (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] === 'https') {
    $_SERVER['HTTPS'] = 'on';
    $_SERVER['SERVER_PORT'] = 443;
}

답은 간단합니다. 워드프레스 루트 디렉토리의 wp-config.php를 열어 위 코드를 삽입하면 끝.

앞서 얘기한 것처럼 워드프레스가 설치되어 있는 서버는 SSL이 설정되어 있지 않은 HTTP 이기 때문에 80포트로 구동되는데요.

위 코드는 리버스 프록시에서 넘겨받은 헤더를 참조해서 앞단의 서버가 SSL로 구동된다면, 즉 https로 HTTP_X_FORWARDED 파라미터가 넘어온다면 워드프레스가 HTTPS로 동작하게 설정하는 코드 입니다.

3 댓글. Leave new

  • 감사합니다.
    워드프레스 ssl 적용 후에 사이트 날라가는줄 알았네요
    덕분에 한숨 돌립니다.
    꾸벅

    응답
  • 3년전 글이라 반심반의 하면서 코드추가 해봤는데, 덕분에 해결 했습니다.
    11시간동안 진짜 짜증났는데 감사합니다… 진짜 왠만해서는 댓글 안다는데 정말 감사합니다.

    응답

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Fill out this field
Fill out this field
유효한 이메일 주소를 입력해주세요.

Wordpress Gutenberg Title
워드프레스 구텐베르크 CSS 삭제하는 방법
워드프레스 5.0에서 기본 에디터로 추가된 구텐베르크(Gutenberg)는 블록 스타일의 위지윅 에디터로 단순한 디자인의 활용도가 높은 CSS를 제공하고 있습니다. 하지만 기존의 클래식…
Wordpress Disable Emoji Title
워드프레스 이모지(Emoji) 비활성화 방법
워드프레스는 :-)나 :-P 같은 텍스트 이모티콘을 입력하면 이모지로 변환해서 보여주는 기능을 포함하고 있습니다. 참고 : 워드프레스 이모티콘(스마일리) 사용법과 리스트 그림(え)과 문자(もじ)의 합성어인…