Technical posts/Web & WAS

apachec rewrite 사용하기 // www 강제 사용 // HTTP to HTTPS // 특정경로만 HTTP

ODB 2016. 12. 9. 09:04

오랫만에 포스팅 간단하게 기록만 하겠다;;



RewriteEngine On


RewriteCond %{HTTP_HOST} !^www\. [NC]

RewriteRule ^(.*)$ http://www.domain.co.kr/$1 [L,R=301]

#HTTP_HOST 가 www가 안붙어 있다면 rewriterule을 이용하여 www.domain.co.kr로 강제로 보내버린다


RewriteCond %{SERVER_PORT} !^80$

RewriteRule   "^/match/(.+)"  "http://%{HTTP_HOST}/match/$1"  [R,L]

#HTTPS로 연결된(SERVER_PORT가 80이 아닌경우) 연결중 /match/가 중간에 포함되면 http(80)로 보내버린다

#예) https://www.domain.co.kr/match/abc.jsp --> http://www.domain.co.kr/match/abc.jsp

# 특정경로만 HTTPS를 적용하지 않으려면 위와 같이 설정을 해준다


RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.*)$ https://www.domain.co.kr/$1 [L,R=301] 

#HTTPS(443)이 아닌 포트에서 들어오는 접속을 HTTPS(443)로 강제로 보내 모든연결을 HTTPS를 사용하도록 설정한다


주석을 제거하면 아래와 같다


RewriteEngine On


RewriteCond %{HTTP_HOST} !^www\. [NC]

RewriteRule ^(.*)$ http://www.domain.co.kr/$1 [L,R=301]


RewriteCond %{SERVER_PORT} !^80$

RewriteRule   "^/match/(.+)"  "http://%{HTTP_HOST}/match/$1"  [R,L]


RewriteCond %{SERVER_PORT} !^443$

RewriteRule ^(.*)$ https://www.domain.co.kr/$1 [L,R=301] 


끝!

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."