코드

서브 도메인을 서브 디렉터리로 리디렉트 - web.config

상석하대 2023. 8. 1. 15:06

예)sub, sub2, sub3 등은 웹루트 바로 아래에 만든 디렉터리이자 서브 도메인의 이름
abc.co.kr/sub
abc.co.kr/sub2
abc.co.kr/sub3
...
식으로 여는 사이트들을 서브 도메인과 연결한다.
sub.abc.co.kr
sub2.abc.co.kr
sub3.abc.co.kr
...

1. CNAME 설정

sub, sub2, sub3 ... 등은 이름으로,
abc.co.kr은 데이터 값으로 해서 DNS 레코드로 등록한다.

2. web.config 작성

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<system.webServer>
		<rewrite>
			<rules>
				<rule name="sub.abc.co.kr" stopProcessing="true">
					<match url=".*" />
					<conditions>
						<add input="{HTTP_HOST}" pattern="^sub.abc.co.kr$" />
						<add input="{PATH_INFO}" pattern="^/sub/" negate="true" />
					</conditions>
					<action type="Rewrite" url="\sub\{R:0}" />
				</rule>
				<rule name="sub2.abc.co.kr" stopProcessing="true">
					<match url=".*" />
					<conditions>
						<add input="{HTTP_HOST}" pattern="^sub2.abc.co.kr$" />
						<add input="{PATH_INFO}" pattern="^/sub2/" negate="true" />
					</conditions>
					<action type="Rewrite" url="\sub2\{R:0}" />
				</rule>
				<rule name="sub3.abc.co.kr" stopProcessing="true">
					<match url=".*" />
					<conditions>
						<add input="{HTTP_HOST}" pattern="^sub3.abc.co.kr$" />
						<add input="{PATH_INFO}" pattern="^/sub3/" negate="true" />
					</conditions>
					<action type="Rewrite" url="\sub3\{R:0}" />
				</rule>
			</rules>
		</rewrite>
	</system.webServer>
</configuration>

-. 기타

웹호스팅상품 1개로 여러 사이트를 운영하고자 할 때 이용한다.
javascript나 index.asp, index.aspx 기본 페이지에서 코드로 리디렉션이 가능하다.

웹서버를 직접 운영하고 있으며,

sub, sub2, sub3...을 DNS에 A값으로 설정했으면,

IIS 사이트에서 바인딩을 해줘야 한다.

반응형