도메인을 이전하면서 쓰기에 좋은 Apache 설정 2011-09-07 04:44:53에 작성. 20,945번 읽힘.

이 글은 도메인을 이전하면서 쓰기에 좋은 Rewrite+PHP 소스와 비슷한 글이다.

굳이 위와 같이 PHP와 Rewrite 모듈을 쓰지 않더라도 더 쉽게 가능한 아파치 설정이 있었다. 나는 보통 /etc/apache2/sites-enabled 에 여러 사이트가 위치하게 쓰고 있고, 거기에 가상호스트를 쭉 적어 놓는다. 거기에 아래와 같이 쓰면 원하는 도메인으로 리다이렉트가 된다. http://이전도메인/asdf 로 접속시에도 http://새도메인/asdf 으로 깔끔하게 리다이렉트가 된다. 참고로 301 Move Permanently 로 리다이렉트가 된다.

<VirtualHost *:80>
	ServerName	예전도메인.com
	Redirect	permanent	/	http://새도메인.com/
</VirtualHost>

permanent(영구 리다이렉션, 301) 부분은 temp(임시 리다이렉션, 302), seeother(참조, 303), gone(영구 삭제, 410, URL뒷쪽 주소가 넘어가지 않음) 등으로 바꿔 적을 수 있고 적지 않아도 된다. 적지 않으면 temp가 기본 값이다.

참고한 문서는 http://httpd.apache.org/docs/2.0/ko/mod/mod_alias.html 이다.

이 포스트와 비슷한 포스트들

도메인을 이전하면서 쓰기에 좋은 Rewrite+PHP 소스 2011-07-25 02:39:53에 작성. 12,242번 읽힘.

사이트를 운영하다보면 도메인을 바꿀 때가 있다. 이쁘지 않은 도메인에서의 이동이나 무료도메인을 쓰고 있었는데 이동을 한다든가의 상황등이 생길 수 있다.

문제는 도메인을 이전하면 그동안 넓고 넓은 인터넷 게시판이나 검색엔진 등에 뿌려진 URL등이 쓸모 없게 된다. 대부분 기껏해야 이전의 도메인으로 접근하면 서브주소가 뭐든 제일 홈만 새 도메인으로 이동시키기 때문이다. 그럼 기존 도메인으로 접속한다면 그 도메인만 바꾸고 서브 주소는 그대로 두는 방식의 Redirect 를 하도록 하게 하면 어떨까?

.htaccess 파일에서 Rewrite 엔진을 쓰면서 PHP파일 1개만 있으면 간단하다.

아래는 .htaccess 파일이다. 예시 위치는 /home/redirect/public_html/.htaccess

RewriteEngine on
RewriteRule ^(.*) /home/redirect/public_html/index.php [L]

아래는 index.php 파일이다. 예시 위치는 /home/redirect/public_html/index.php

<?
Header("Location: http://목적지도메인.com{$_SERVER['REQUEST_URI']}");
?>

상당히 쉽게 구현 할 수 있다.

이 포스트와 비슷한 포스트들