Network & Server Factory

개인 공부 기록

Web & DB/WordPress

[WordPress] 리버스 프록시 뒤에서 HTTPS 적용

1nfra 2021. 11. 1. 21:51
워드프레스에 HTTPS를 적용하면서 .htaccess의 재작성 규칙과 wp-config.php의 설정을 수정했습니다. 앞단 프록시가 넘겨주는 X-Forwarded-Proto 헤더를 보고 HTTPS로 인식하도록 한 것이 핵심입니다.

1. .htaccess 수정

워드프레스 기본 재작성(rewrite) 규칙입니다.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

2. wp-config.php 추가

사이트 주소를 지정하고, 프록시가 보낸 X-Forwarded-Proto 값이 https이면 워드프레스가 HTTPS 요청으로 인식하도록 합니다. domain.com은 실제 도메인으로 바꿉니다.

define('WP_HOME','http://domain.com');
define('WP_SITEURL','http://domain.com');
#define('WP_ALLOW_MULTISITE', true);

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

#define('ADMIN_COOKIE_PATH', '/');
#define('COOKIE_DOMAIN', '');
#define('COOKIEPATH', '');
#define('SITECOOKIEPATH', '');

3. 정리

  • 프록시 뒤에 있는 워드프레스는 X-Forwarded-Proto를 확인하도록 설정해야 HTTPS 무한 리디렉션 같은 문제가 생기지 않습니다.
  • 수정할 내용 전체는 아래 첨부 파일에 있습니다.

수정할 내용.txt
0.00MB

728x90

'Web & DB > WordPress' 카테고리의 다른 글

[WordPress] 외부 접속이 안 될 때 HOME, SITE URL 변경  (3) 2021.09.25
서울
--:--:--
-전체 글
-카테고리
오늘 방문