메뉴 건너뛰기

2016.03.18 23:19

Apache 리다이렉트

조회 수 8155 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

apache 리다이렉트


리다이렉트에 대해 검색해보니 대부분 하나의 방법에 대해서 블로깅 하더군요.

모든 일에 있어서 목표에 접근하는 다양한 방법을 알아두는것이 좋습니다.

방법만 다르고 기능은 동일한 아래 3가지 방법 정리 해놨으니 업무에 참고들 하세요.

단, 응용해서 사용할 줄 알아야 합니다.

 

1. htaccess 파일 통한 리다이렉트

apache 스펙 문서를 보면 .htaccess 는 과도한 디스크 접근이 발생하므로 특수한 경우가 아니라면 사용을 피하라고 하고 있습니다.
아파치 튜토리얼: http://httpd.apache.org/docs/2.2/en/howto/htaccess.html

 

2. mod_rewrite 모듈을 이용한 특정 페이지 redirect
< VirtualHost *:80>
 Servername      www.gmate.co.kr
 ...
 <IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteCond %{HTTPS} off
 RewriteRule ^/user/login(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R, L]
 </IfModule>
 </VirtualHost>
 
이렇게 설정하면 /user/login... 으로 시작하는 페이지들의 경우에는 아파치 단에서 https 로 강제 redirect 되게 됩니다.

우리 지메이트 고객사중에도 이렇게 적용해주길 바라는 회사가 많을겁니다.

여기서 이유를 알려면 http 와 https 의 차이점이 무엇인지 각자 의문을 가지고 확인해보세요.

분명하고 중요한 차이에 의해서 특정 페이지만 리다이렉트 하길 원합니다.
 

사용한 변수들)
 RewriteEngine: rewrite 모듈의 사용 여부 [On/Off]
 RewriteCond: rewrite 실행할 조건
 RewriteRule: 조건이 만족할 경우 실제로 rewrite가 일어날 원본 주소와 rewrite 된 주소
 
%{HTTPS} : SSL 사용 여부 [on/off] - mod_ssl 필요
 %{HTTP_HOST} : 호출된 서버의 domain. 포트 번호 있을 경우에는 port 번호 포함.
   ex) http://www.gmate.co.kr/myurl.html?var=value => www.gmate.com.kr
 %{REQUEST_URI} : 도메인 이후의 리소스 절대 경로 및 파라미터
   ex) http://www.gmate.co.kr/myurl.html?var=value => /myurl.html?var=value
 [R] : 강제로 redirect 시킴 (http status code에 따라 분기할 수 있습니다.)
 [L] : 마지막 RewriteRule 표시. (이후의 RewriteRule은 무시됨)
 

보다 다양한 내용은 아파치 document에서 확인해 보세요 ^^
Apache Module mod_rewrite: http://httpd.apache.org/docs/2.2/en/mod/mod_rewrite.html

 

3. RedirectMatch 통해 잘못된 하위 url 입력 시 메인페이지로 리다이렉트

RedirectMatch /(.*)$ http://gmate.co.kr/$1

익스플로어 주소입력창에 http://gmate.co.kr/aslkfjsaflkjaslfkjsad   이런식으로 없는 url 입력 시 메인페이지로 전환 시켜줍니다.


List of Articles
번호 제목 날짜 조회 수
97 yum 업데이트 빠르게 하기 (yum-fastestmirror 플러그인 2014.02.27 7749
96 yum 업데이트 시 특정 패키지 예외처리 2016.03.18 8350
95 yum-fastestmirror로 CentOS 5.0 의 yum 속도 업! 2016.03.18 7513
94 Yum과 rpm을 이용하여 PHP5.5버전 설치 2016.03.18 8075
93 yum으로 phpmyadmin 설치 2014.03.26 7544
92 ZendOptimizer 3.3.9 설치하기 2014.03.26 7007
91 [apache] - .htaccess 설정 2016.03.18 7262
90 [CentOS 6.5] JDK (JAVA) 설치 file 2017.03.11 8691
89 [CentOS 6.5] SSH,TELNET, FTP 설치 및 운용 file 2017.03.11 8558
88 [CentOS 6.5] Tomcat 설치 및 구동 file 2017.03.11 9483
87 [CentOS 6.5] Virtual Box를 이용한 CentOS 6.5 설치 file 2017.03.11 6600
86 [CentOS 7] SSH 무작위 로그인 시도 막기 ( Fail2Ban ) 2018.03.28 69699
85 [Linux]리눅스,사용자계정(관련 파일,명령어) file 2015.11.21 8159
84 기본 허가권,퍼미션 지정(제어, 설정)하기(umask와 작동 원리) file 2023.01.12 164
83 긴급 스왑 메모리 추가 하기 2014.03.26 7622
82 다중명령어(세미콜론(;), 파이프pipe(|), 더블 엔퍼센트 &&, ||)의미,사용법과 차이점 file 2023.01.12 154
81 대용량 HDD 파티셔닝(Mass storage Partitioning) 2014.02.27 7351
80 도메인 포워딩 설정 2014.02.27 7970
79 도메인에 자동으로 www 붙도록 설정하기 2014.02.27 7581
78 리눅스 - 동시접속자 확인 방법 2014.02.27 7699
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 Next
/ 12

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved