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)
조회 : 272   추천 : 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,006
번호 제   목 글쓴이 날짜 추천 비추천 조회
28006 iptables를 이용한 ddos공격방어 덩벙이 08-01 0 0 404
28005 php 스크립트 리눅스에서 백그라운드로 실행 덩벙이 07-19 0 0 262
28004 리눅스 CPU&Memory 사용률&점유율 확인 [출처] 리눅스 CPU&Memo… 덩벙이 07-04 0 0 260
28003 리눅스 화면보호기 끄기 덩벙이 07-04 0 0 266
28002 CentOS 텔넷 서버 덩벙이 07-04 0 0 255
28001 프로세스 수행 시간 확인 덩벙이 07-04 0 0 254
28000 웹서버 동시 접속자 수 확인 덩벙이 07-04 0 0 254
27999 특정 라인/필드 만 출력 [출처] 특정 라인/필드 만 출력|작성자 … 덩벙이 07-04 0 0 256
27998 복수의 패키지 설치 여부 확인하기 [출처] 복수의 패키지 설치 … 덩벙이 07-04 0 0 252
27997 Apache 도메인 리다이렉션 방법 [출처] Apache 도메인 리다이렉… 덩벙이 07-04 0 0 273
27996 Apache iframe 가능 설정 [출처] Apache iframe 가능 설정|작성… 덩벙이 07-04 0 0 248
27995 리눅스 트래픽 제어 덩벙이 07-04 0 0 251
27994 ssh 암호 입력 없이 rsync 하는 방법 덩벙이 07-04 0 0 259
27993 리눅스 IPTABLES 에 포트 추가하기 덩벙이 07-04 0 0 278
27992 리눅스 트래픽 모니터링 쉘스크립트 덩벙이 07-04 0 0 253
27991 리눅스 사용자 DB & Data 자동 백업 덩벙이 07-04 0 0 265
27990 리눅스 반복 예약작업 cron crontab 덩벙이 07-04 0 0 267
27989 아파치 이미지파일 로그 안나오게 하기 덩벙이 07-04 0 0 254
27988 구글봇 및 검색봇 차단하여 트래픽 줄이기 덩벙이 07-04 0 0 275
27987 리눅스 카운트 명령어 wc 덩벙이 07-04 0 0 258
 1  2  3  4  5  6  7  8  9  10    
 
개인홈페이지 덤벙닷컴은 프로그래머와 디자이너위한 IT커뮤니티 공간입니다.
Copyright ⓒ www.dumbung.com. All rights reserved.