URL Redirection 하기

단비의 일상/IT Episode 2007.07.19 23:49
웹사이트(블로그)를 운영하다가 도메인을 변경하게 되는 경우가 왕왕 있다. 이때 당장 이전 도메인으로 접속을 할 수 없게하면 모든 서비스가 끊길 뿐만 아니라 검색엔진이 새로운 사이트를 크롤링 해가기 전까지는 검색도 안된다.

더군다나 사이트 도메인만 까뿐히 바꿔버리면 모르겠지만 서브페이지가 많을 경우 그것들을 다 이전된 도메인으로 일일히 맞춰주어야 하므로 뭔가 방법을 모색해야 한다.

그때, 몇가지 방법을 생각할 수 있다.

일단, Apache와 IIS에 따라 방법이 크게 나뉘는데 Apache(LINUX)의 경우는 서버 운영보다는 호스팅을 많이 할테니 계정에서 처리할 수 있는 방법을, IIS(Windows)의 경우는 서버 전체를 관리하는 인터넷 서비스 관리자에서 관리하는 법을 알아보기로 하자.

1. Apache
두가지 방법이 있다. 어차피 둘 다 Apache 모듈을 쓰는 방법인데, ReWrite 모듈이나 혹은 Redirection 모듈이다. 이 두가지는 웬만한 아파치 서버라면 다 올라가 있다.(특히 TatterTools를 돌리기 위해서는 ReWrite 모듈이 필수다.)

Rewrite Module을 사용하는 방법(abc.com->123.com으로 보내는 경우)
계정의 .htaccess 파일이나 httpd.conf 의 적당한 섹션에 다음과 같이 적어주면 된다.

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(abc\.com)(:80)? [NC]
RewriteRule ^(.*) http://123.com/$1 [R=301,L]
그런데 사실, 이렇게 간단한 것을 하기 위해 Rewrite Module을 쓰는 것은 닭잡는데 소잡는 칼을 쓰는 격이다. Redirect 모듈을 쓰면 아주 간단히 해결된다.
원래 abc.com으로 접속되던 계정에 있는 .htaccess 파일이나 httpd.conf 파일의 적당한 섹션에 다음과 같이 적어준다. 단 한줄이면 된다.

Redirect / http://123.com/
Rewrite 모듈에 비해서 정말 간단하다. ^^ 원래 이러한 목적으로 만든거니까.

2. IIS
Windows 계열의 서버에 깔려있는 웹서버인 IIS에서도 비슷한 효과를 낼 수 있다. IIS에서는 모듈이 올라가지 않는 대신에, IIS에 비슷한 기능이 존재한다.

1. 인터넷 정보 서비스 실행
2. 인터넷 정보 서비스 중 웹사이트를 선택하고 구성한 웹사이트 선택
3. 오른쪽 마우스를 클릭하면 나오는 컨텍스트 메뉴 중 속성(R) 클릭
4. 등록정보 대화상자에서 홈 디렉터리 탭 선택
5. 연결 리소스로 URL로 리디렉션을 선택
6. 상세 정보창에 URL을 적어주고 이 리소스를 영구적으로 리디렉션(H) 체크박스 선택
7. 확인 버튼 클릭
위와 같은 설정을 하면 IIS에 잡혀있던 URL로 오는 요청들은 새로 Redirection 되는 곳으로 보내진다.

인터넷 정보 서비스(IIS) 관리 화면

인터넷 정보 서비스(IIS) 관리 화면

설정

트랙백

댓글