본문 바로가기
Middleware/WebtoB

WebtoB HTTP 접속을 HTTPS 로 접속 되도록 설정

by nxCore 2023. 5. 11.

 

 

WebtoB 에서 HTTP 로 접속한 Client 를 HTTPS 로 다시 접속하도록 Redirect 시키는 설정 방법입니다.

인프라 상황에 따라 구성 방법이 일부 달라지므로 다음 사례를 확인 후 맞는 방법으로 구성해주시면 됩니다.

 

[Case 1]

Client 가 중간 네트워크 장비 (WAF 등)를 거치지 않고 WebtoB 에 직접 접속하는 경우

 >> [Solution 1] 방법으로 설정

 

[Case 2]

Client와 WebtoB 사이에 중간 네트워크 장비 (WAF 등)가 있으나, 80 포트(HTTP) 접속 시 WebtoB 의 80 포트로, 443 포트(HTTPS) 접속 시 WebtoB 의 443 포트로 포트 변경 없이 그대로 연결되는 경우

 >> [Solution 1] 방법으로 설정

 

[Case 3]

Client와 WebtoB 사이에 중간 네트워크 장비 (WAF 등)가 있으나, 80 포트(HTTP) 접속 시 WebtoB 의 80 포트로, 443 포트(HTTPS) 접속 시 WebtoB 의 80 포트로 연결되어, WebtoB 443 포트를 사용하지 않는 경우

(WebtoB 에 SSL/TLS 설정을 하지 않고 앞단 네트워크 장비에서 SSL/TLS Handshake 를 담당하는 경우)

 >> [Solution 2] 방법으로 설정

 

 

[Solution 1]

$WEBTOBDIR/config/http.m 파일을 수정합니다.

*VHOST 절에 설정되어 있는 HTTP 서비스 호스트 (주로 80 포트) 에 다음 설정을 추가합니다.

*VHOST.URLRewrite = Y,

*VHOST.URLRewriteConfig = "config/rewrite_ssl.conf"  # rewrite 설정 파일명은 자유롭게 변경해도 됩니다.

*VHOST
v_http		DOCROOT = "/home/webtob/docs",
		HOSTNAME = "test.co.kr",
		PORT = "80",
		URLRewrite = Y,
		URLRewriteConfig = "config/rewrite_ssl.conf",
		LOGGING = "acc_http",
		ERRORLOG = "err_http"

 

$WEBTOBDIR/config/rewrite_ssl.conf 파일을 생성 후 다음 내용을 추가합니다.

RewriteCond %{HTTPS} off
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=307,L]

 

http.m 파일을 컴파일 후 WebtoB 를 재기동하면 설정이 완료됩니다.

 

 

[Solution 2]

앞단 네트워크 장비에서 "X-Forwarded-Proto" 헤더를 뒷단 WebtoB 서버에 전달을 해주어야 설정 가능합니다.

헤더 설정이 불가능한 경우, Redirect 설정을 WebtoB 가 아닌 네트워크 장비에 설정해주어야 합니다.

 

$WEBTOBDIR/config/http.m 파일을 수정합니다.

*VHOST 절에 설정되어 있는 HTTP 서비스 호스트 (주로 80 포트) 에 다음 설정을 추가합니다.

*VHOST.URLRewrite = Y,

*VHOST.URLRewriteConfig = "config/rewrite_ssl.conf"  # rewrite 설정 파일명은 자유롭게 변경해도 됩니다.

*VHOST
v_http		DOCROOT = "/home/webtob/docs",
		HOSTNAME = "test.co.kr",
		PORT = "80",
		URLRewrite = Y,
		URLRewriteConfig = "config/rewrite_ssl.conf",
		LOGGING = "acc_http",
		ERRORLOG = "err_http"

 

$WEBTOBDIR/config/rewrite_ssl.conf 파일을 생성 후 다음 내용을 추가합니다.

RewriteCond %{HTTP:X-Forwarded-Proto} ^http$
RewriteRule .* https://%{SERVER_NAME}%{REQUEST_URI} [R=307,L]

 

http.m 파일을 컴파일 후 WebtoB 를 재기동하면 설정이 완료됩니다.

 

댓글