Ubuntu 24.04 Server / Apache / Reverse Proxy 구축
가정
- 웹 서버 : 192.168.0.31
- 도메인 : https://abc.memofactory.net
프록시 서버
- 모듈 활성화
a2enmod proxy proxy_http headers
- conf 파일
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerName abc.memofactory.net
ProxyRequests Off
ProxyPreserveHost On
ProxyPass / http://192.168.0.31:80/
ProxyPassReverse / http://192.168.0.31:80/
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-Port "443"
...
</VirtualHost>
</IfModule>
웹서버
- conf 파일
<VirtualHost *:80>
ServerName abc.memofactory.net
...
</VirtualHost>
기타
- 인증서는 프록시 서버에만 설치
- 웹서버의 홈페이지 플랫폼이 워드프레스라면 wp-config.php에 다음 코드를 추가한다.
define('FORCE_SSL_ADMIN', true);
if ($_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') $_SERVER['HTTPS']='on';