Redirect 지시어는 클라이언트가 다른 url에 연결되도록 기존의 url을 새로운 url로 대응시킨다. 즉, old-url의 접속요청을 new-url로 바꾸어준다.
예를 들어 ebomun.com의 가상호스트 설정에서
Redirect / http://eseoil.com |
으로 정의하면 ebomun.com으로의 접속 요청은 eseoil.com으로 리디렉트된다.
여기서 Redirect 지시어 다음에 상태코드를 입력할 수 있으며, 코드를 생략하게 되면 기본값인 temp(302)가 반환된다.
Redirect temp / http://eseoil.com |
permanent / 301 : 영구적인 리디렉션 (cf: 308)
temp / 302 : 임시적인 리디렉션
seeother / 303 : 데이터의 변경 - 브라우저를 다른 리소스로 리디렉션(post를 get으로 리디렉션) (cf: 307)
gone / 410 : 영구적인 삭제 - gone(410) 사용시 새로운 URL을 사용할 수 없다.
상태코드를 숫자로 대체할 수 있으며, 이러한 상태코드는 apache 코드에 미리 정의되어 있어야 한다. 위의 예에서 temp 대신에 302를 넣을 수 있다는 의미이다. Redirect 302 / http://eseoil.com
참고로 보안서버를 구축한 후에 http를 https로 변환할 때에 흔히(?) 사용되는 rewrite 모듈을 이용하는 방법도 있고 .htaccess 에서도 url의 redirection은 가능하다.
위에서 예로 들었던 내용을 rewrite module로 구현하면 대략(?) 아래와 같다.
~
RewriteEngine On
RewriteRule ^(.*) http://eseoil.com/$1 [L]
~
~
RewriteEngine On
RewriteRule ^(.*)$ http://eseoil.com [L]
~
정규식에 익숙해지자.
참고
2020.05.29 - [Linux/Web Server] - apache - HTTP 403 / 404 ERROR 설정
'Linux > Web Server' 카테고리의 다른 글
업로드 파일의 용량 제한 변경하기(feat. ModSecurity) (0) | 2021.08.22 |
---|---|
ModSecurity: Access denied with code 44 (phase 2). Match of "eq 0" against "MULTIPART_UNMATCHED_BOUNDARY" (0) | 2021.06.25 |
웹 서버의 정보 숨기기 (apache) (2) | 2021.04.21 |
[CentOS8] httpd[proxy_fcgi:error] [pid 31nn:tid 14nn] ~ AH01071: Got error 'Primary script unknown' (0) | 2020.12.13 |
apache[httpd] 웹서버의 기본포트[80] 변경하기 (0) | 2020.07.27 |
댓글