SERVER > LINUX - Tip&Tech > Apache 도메인 리다이렉션 방법 [출처] Apache 도메인 리다이렉션 방법|작성자 숭숭
 
SERVER
LINUX
Windows NT
 
아파치
LINUX - Tip&Tech
  HOME > SERVER > LINUX - Tip&Tech
 
작성일 : 17-07-04 10:51
Apache 도메인 리다이렉션 방법 [출처] Apache 도메인 리다이렉션 방법|작성자 숭숭
 글쓴이 : 덩벙이 (211.♡.155.10)
조회 : 470   추천 : 0   비추천 : 0  

<  Apache 도메인 리다이렉션 방법  >




목표 : www.test.com, test.com, www.test.co.kr, test.co.kr

이 4개 중 어떤 도메인을 입력 하더라도 www.test.com 으로 접속되게끔 리다이렉션




- 1) redirect 를 이용한 리다이렉션 -


vi /usr/local/apache/conf/extra/httpd-vhosts.conf

<VirtualHost *:80>

    ServerName www.test.com

    DocumentRoot "/usr/local/apache/htdocs/test"

    ErrorLog "logs/test/test-error_log"

    CustomLog "logs/test/test-access_log" common

</VirtualHost>


<VirtualHost *:80>

    ServerName test.com

    Redirect / http://www.test.com

</VirtualHost>


<VirtualHost *:80>

    ServerName www.test.co.kr

    Redirect / http://www.test.com

</VirtualHost>


<VirtualHost *:80>

    ServerName test.co.kr

    Redirect / http://www.test.com

</VirtualHost>



mkdir /usr/local/apache/logs/test


mkdir /usr/local/apache/htdocs/test


vi /usr/local/apache/htdocs/test/index.html

<html>

<body>

www.test.com <br>

= test.com <br>

www.test.co.kr <br>

= test.co.kr <br>

</body>

</html>


service httpd restart




- 2) rewrite module 을 이용한 리다이렉션 -


vi /usr/local/apache/conf/httpd.conf

LoadModule rewrite_module modules/mod_rewrite.so  (:148부근 주석해제)


vi /usr/local/apache/conf/extra/httpd-vhosts.conf

<VirtualHost *:80>

    DocumentRoot "/usr/local/apache/htdocs/test"

    ServerName www.test.com

    ServerAlias test.com

    ServerAlias www.test.co.kr

    ServerAlias test.co.kr

    RewriteEngine On

    RewriteCond %{HTTP_HOST} ^(test\.com|www\.test\.co\.kr|test\.co\.kr)

    RewriteRule   (.*) http://www.test.com$1 [R,L]

    ErrorLog "logs/test/test-error_log"

    CustomLog "logs/test/test-access_log" common

</VirtualHost>


service httpd restart




- 확인 -


클라이언트의 호스트 파일에 매핑

192.168.100.101 www.test.com

192.168.100.101 test.com

192.168.100.101 www.test.co.kr

192.168.100.101 test.co.kr




- - - - - [추가 정보] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 




Rewrite 모듈을 이용하기 위해 필요한 것들에 대해서 알아보자.


Rewrite 를 적용할 수 있는 범위 - 서버 전체에 설정할 수도 있고 특정 호스트에만 적용할 수도 있다.


Rewrite 모듈 지시자


RewriteEngine On / Off

Rewrite 엔진을 사용할지 여부를 설정한다. default는 off이다.

현재 Apache에서 실행중인 모든 RewriteRule을 비활성화 시킬때 RewriteRule 라인의 주석처리보다 RewriteEngin Off 로 해야 한다.


RewriteLog FILE-PATH

RewriteLog 지시자는 Rewrite 엔진의 로그를 기록할 파일을 지정한다.


RewriteLogLevel Level

RewriteLog 지시자로 설정한 로그파일에 기록할 로그들에 대해 얼마나 자세한 내용을 로그에 남길 것인가에 대해 설정하는 지시자이다.

Level 은 0~9까지 사용할 수 있으며 0은 기록하지 않겠다는 의미이다. 숫자가 높을 수록 자세한 로그를 기록한다.


RewriteCond TestString CondPattern

RewriteRule 과 함께 사용되는 규칙으로 RewriteCond 다음에 오는 RewriteRule은 RewriteCond 에서 설정한 패턴과 일치해야지만 RewriteRule을 실행한다.


RewriteRule Pattern Substitution

Rewrite 모듈의 실질적인 Rewrite 규칙들을 적용하는 지시자이다.

Pattern(input URL)을 Subtitution(Return URL)로 변경하기 위한 모든 규칙들은 이 지시자를 사용해서 설정해야 한다.

Pattern에는 Perl 정규표현식을 사용할 수 있기 때문에 Pattern의 규칙을 폭넓게 적용 가능하다.


기본 정규표현식

. : 다수의 한문자

? : 0개 이상의 한문자

* : 0개 이상의 문자열

+ : 1개 이상의 문자열

(chars) : (, ) 안의 문자 또는 문자열을 그룹으로 묶는다. 이 문자그룹은 Substitution에서 $N의 변수로 활용할 수 있다.

^ : 문자열의 첫부분을 지정

$ : 문자열의 끝을 지정

\ : 정규표현식에서 특별한 의미로 사용되는 문자의 특수기능을 제거

{n} : 정확히 n번 반복

{n,} : n번 이상 반복

{n,m} : n이상 m 이하 반복

[chars] : 문자들의 범위 또는 표현할 수 있는 문자들을 설정


정규표현식 단축표현들

[:alpha:] : 알파벳과 같은 표현, [a-zA-Z]

[:alnum:] : 알파벳과 숫자, [a-zA-Z0-9]

[:digit:] : 숫자, [0-9]

[:upper:] ㅣ 알파벳 대문자 [A-Z]


 
 

Total 28,009
번호 제   목 글쓴이 날짜 추천 비추천 조회
28009 IPTables에서 국가별 아이피대역을 차단하는 방법 [GeoIP] 11개… 덩벙이 07-05 0 0 75
28008 iptables를 이용한 ddos공격방어 덩벙이 08-01 0 0 721
28007 php 스크립트 리눅스에서 백그라운드로 실행 덩벙이 07-19 0 0 450
28006 리눅스 CPU&Memory 사용률&점유율 확인 [출처] 리눅스 CPU&Memo… 덩벙이 07-04 0 0 445
28005 리눅스 화면보호기 끄기 덩벙이 07-04 0 0 460
28004 CentOS 텔넷 서버 덩벙이 07-04 0 0 442
28003 프로세스 수행 시간 확인 덩벙이 07-04 0 0 437
28002 웹서버 동시 접속자 수 확인 덩벙이 07-04 0 0 438
28001 특정 라인/필드 만 출력 [출처] 특정 라인/필드 만 출력|작성자 … 덩벙이 07-04 0 0 441
28000 복수의 패키지 설치 여부 확인하기 [출처] 복수의 패키지 설치 … 덩벙이 07-04 0 0 436
27999 Apache 도메인 리다이렉션 방법 [출처] Apache 도메인 리다이렉… 덩벙이 07-04 0 0 471
27998 Apache iframe 가능 설정 [출처] Apache iframe 가능 설정|작성… 덩벙이 07-04 0 0 433
27997 리눅스 트래픽 제어 덩벙이 07-04 0 0 436
27996 ssh 암호 입력 없이 rsync 하는 방법 덩벙이 07-04 0 0 445
27995 리눅스 IPTABLES 에 포트 추가하기 덩벙이 07-04 0 0 460
27994    리눅스 IPTABLES 에 포트 추가하기 (나가는 도메인 및 포트막기) 덩벙이 07-05 0 0 38
27993 리눅스 트래픽 모니터링 쉘스크립트 덩벙이 07-04 0 0 439
27992 리눅스 사용자 DB & Data 자동 백업 덩벙이 07-04 0 0 447
27991 리눅스 반복 예약작업 cron crontab 덩벙이 07-04 0 0 450
27990 아파치 이미지파일 로그 안나오게 하기 덩벙이 07-04 0 0 436
 1  2  3  4  5  6  7  8  9  10    
 
개인홈페이지 덤벙닷컴은 프로그래머와 디자이너위한 IT커뮤니티 공간입니다.
Copyright ⓒ www.dumbung.com. All rights reserved.