본문 바로가기
Linux/Web Server

apache - HTTP 30x [URL Redirection]

by aegypius 2021. 6. 7.
728x90
반응형

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 설정

 

apache - HTTP 403 / 404 ERROR 설정

웹서버 운영중에 http 403, 404, 500(은 ..-_-) 등의 오류가 발생하면 기본 오류 메시지가 출력된다. 이러한 오류 페이지도 사이트의 일부라고 생각하여 전체 사이트의 디자인에 맞춰서 새롭게 만드는

aegypius.tistory.com

 

728x90
반응형

댓글