서브도메인 www 고정연결 설정에서 예외 서브도메인 설정

서브도메인 www 고정연결 설정에서 예외 서브도메인 설정

QA

서브도메인 www 고정연결 설정에서 예외 서브도메인 설정

답변 1

본문

www 없으면 자동으로 붙이고 잘못된 서브도메인으로 접근했을경우 www 고쳐 연결하는 설정을 htaccess 로 적용을 했었습니다.

m.도메인.com 이나 login.도메인.com같은 예외로 적용하고 싶은 서브도메인들이 생겨서

php 방식으로 바꾸어보았지만 if문을 어떻게 적용해야할지 모르겠네요.

 

기존 htaccess 소스


RewriteCond %{HTTP_HOST} !^www\.domain\.co.kr$ [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*)$ http://www\.domain\.co.kr/$1 [L,R]

 

www 붙이는 php 방식1


if(!stristr($_SERVER['HTTP_HOST'],"www.")) header("location: http://www.domain.co.kr".$REQUEST_URI); exit; 

 

www 붙이는 php 방식2


if (!preg_match('/www/', $_SERVER['HTTP_HOST']) == true) {
header("location: http://www.domain.co.kr".$REQUEST_URI);
}

 

이런 소스들중에서 m, login, member 같은 지정 서브도메인에서는 www로 고치기를 제외하고싶습니다.

if문 사용하고싶어서 php방식으로 바꾸고싶습니다만 그래도 htaccess 방식도 알아두고싶습니다.

감사합니다!

 

...

 

...

 

...

 

...

 

...

 

...

이 질문에 댓글 쓰기 :

답변 1

테스트/확인은 해보지 못했습니다.

 

* php


$arr_allowed = array("domain", "m", "login", "member");
$first_part = array_shift((explode('.', $_SERVER['HTTP_HOST'])));
if (!in_array($first_part, $arr_allowed))
    header("location: http://www.domain.co.kr".$REQUEST_URI); 
exit; 

 

* .htaccess 


RewriteCond %{HTTP_HOST} !^(www|m|login|member)\.domain\.co.kr$ [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*)$ http://www\.domain\.co.kr/$1 [L,R]
답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 95
© SIRSOFT
현재 페이지 제일 처음으로