[입력된 도메인에 따라 다른 페이지 출력하기] - stristr($_SERVER[HTTP_HOST]
하나의 서버나 웹호스팅을 이용하는데 두개의 도메인을 이용하여 사이트를 운영해야 하는 경우가 있습니다.
이때 두개의 도메인을 하나의 웹호스팅에 연결해서 사용하는 방법입니다.
하나의 웹호스팅에 각 도메인마다의 페이지를 만들어 놓고, 도메인을 판별해 해당 페이지를 자동으로 오픈시킵니다.
즉, A.html과 B.html을 만들어 놓고 A.com으로 들어오면 A.html로, B.com으로 들어오면 B.html로 연결해 주는 소스입니다.
소스코드
인덱스 파일(index.html이나 index.php 등)에 아래의 소스를 삽입합니다.
<?
if (stristr($_SERVER[HTTP_HOST], "A도메인주소")) { $toLink = "A도메인이 연결될 파일"; }
else if (stristr($_SERVER[HTTP_HOST], "B도메인주소")) { $toLink = "B도메인이 연결될 파일"; }
else { echo "잘 못된 주소입니다 !"; exit; }
include $toLink;
?>
소스코드 설명
stristr($_SERVER[HTTP_HOST]는 특정 문자를 검사하는 구문입니다.
즉, 입력된 도메인을 검사해서 원하는 도메인이 적혔는지 확인하는 것입니다.
위의 코드에서 "A도메인이 연결될 파일" 부분에 오타를 내거나 잘못된 파일로 연결이 되어 있다면 마지막 else에서 에러메세지를 냅니다.
도메인을 여러개 가지고 있다면
else if (stristr($_SERVER[HTTP_HOST], "B도메인주소")) { $toLink = "B도메인이 연결될 파일"; }
부분을 계속 추가하면 됩니다.
보통 index파일을 하나 만들지만, 이 방법은 index에서는 전달만 하는 역할을 합니다. 일반적으로는 index파일이 첫 대문페이지가 되지만, 위와 같이 한다면 index페이지는 다른 페이지로 넘기는 역할만 한다는 얘기입니다.
A도메인으로 들어왔을 때는 index_A.html파일로 연결되게 만들고
B도메인으로 들어왔을 때는 index_B.html파일로 연결되게 하는 것이기 때문입니다.
$toLink 부분이 해당 파일로 보내주는 역할을 하는데,
잘 이용하면 도메인에 따라 폴더(디렉토리)를 따로 만들어 놓고 사용하는 것도 가능할 것입니다.
include $toLink; 부분은 도메인에 해당하는 문서를 불러와서 index파일에 출력해 주는 역할을 합니다.
★ 이 정보가 도움이 된다면 아래의 공감을 부탁드립니다! ^^