Apache HTTP Server Version 2.4
�� ������ ���� ���ǵǴ� ����ȣ��Ʈ ������ ���� �Ϸ��� ��������. ��Ȳ�� �̸�����̳� IP��� ����ȣ��Ʈ�� ���� �� �������� ���� ������Ʈ�� �����Ϸ��� ����̴�. �� ���Ͻ� ���� �ڿ��� ���� ������ ����Ͽ� ����Ʈ�� ��ϴ� ��츦 �ٷ� ������ �� ���� ���̴�.
_default_
����ȣ��Ʈ
����ϱ�ServerPath
���þ� ����ϱ������� IP �ּҰ� �Ѱ� �ְ�, DNS���� ���� �ּ�(CNAMES)��
�� ��ǻ�� ����Ų��. �� ��ǻ�Ϳ��� www.example.com
��
www.example.org
�� �������� �����ϰ� �ʹ�.
����ġ ������ ����ȣ��Ʈ ������
�Ѵٰ� �� ȣ��Ʈ���� ���� DNS ���� �ڵ��̷� ��������
�ʴ´�. �ݵ�� DNS�� IP �ּҸ� ����Ű��
�̸��� �־�� �Ѵ�. �ȱ��� �ƹ��� ������Ʈ�� ��
�� ����. �˻��غ��� ���� hosts
���Ͽ� ����
�߰��� �� ������, �̴� hosts ���� ���� ��ǻ�Ϳ���
�ݿ��ȴ�.
# ����ġ�� ��Ʈ 80�� ��ٸ���
Listen 80
# ��� IP �ּҿ��� ����ȣ��Ʈ ��û�� ��ٸ���
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.example.com
# �ٸ� ���þ�鵵 �ִ�
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/example2
ServerName www.example.org
# �ٸ� ���þ�鵵 �ִ�
</VirtualHost>
��ǥ�� ��� �ּҸ� ����Ű�Ƿ�, �ּ����� � ��û��
�������� �ʴ´�. www.example.com
��
�������Ͽ� ó������ �����Ƿ� ���� ���� �켱������ ������,
�⺻Ȥ�� �ʱ� ������ �ȴ�.
� ServerName
���þ�� �ش�����ʴ� ��û��
ù��° VirtualHost
�� �����Ѵ�.
���Ѵٸ� *
��� �ý����� ���� IP
�ּҸ� ����� �� �ִ�. �� ���
VirtualHost
�� �ƱԸ�Ʈ��
NameVirtualHost
�� �ƱԸ�Ʈ�� ��ġ�ؾ�
�Ѵ�:
NameVirtualHost 172.20.30.40
<VirtualHost 172.20.30.40>
# ���� ...
���� ISP���� �������� IP �ּҸ� �������� ��
IP �ּҸ� �� ��쿡�� *
�� ����ϴ�
���� �����ϴ�. *
�� ��� IP �ּҿ�
�ش��ϹǷ�, IP �ּҰ� ����Ǿ ������ ������
�ʿ䰡 ����.
���� ��κ��� �̸���� ����ȣ��Ʈ ������ ���� ����. ���ܴ� �ٸ� IP �ּҳ� ��Ʈ�� �ٸ� ������ �����Ϸ��� ����̴�.
���⼭ ������ ����� IP �ּҰ� ��� ���밡���ϴ�.
������ IP �ּҰ� �ΰ��ִ�. �ϳ�����
(172.20.30.40
) "��" ����
server.domain.com
�� �����ϰ�, �ٸ� �ϳ�����
(172.20.30.50
) ���� ����ȣ��Ʈ�� ������
���̴�.
Listen 80
# 172.20.30.40���� �����ϴ� "��"�����̴�
ServerName server.domain.com
DocumentRoot /www/mainserver
# �ٸ� �ּҴ�
NameVirtualHost 172.20.30.50
<VirtualHost 172.20.30.50>
DocumentRoot /www/example1
ServerName www.example.com
# �ٸ� ���þ�鵵 �ִ� ...
</VirtualHost>
<VirtualHost 172.20.30.50>
DocumentRoot /www/example2
ServerName www.example.org
# �ٸ� ���þ�鵵 �ִ� ...
</VirtualHost>
172.20.30.50
�� �ƴ� �ּҿ� ���� ��û��
�ּ����� �����Ѵ�. ȣ��Ʈ�� ����, �� Host:
������� 172.20.30.50
�� ��û�ϸ�
www.example.com
�� �����Ѵ�.
���� ��ǻ�Ϳ� IP �ּҰ� �ΰ� (192.168.1.1
��
172.20.30.40
) �ִ�. ��ǻ�ʹ� ���� (��Ʈ���)
��Ʈ���� �ܺ� (���ͳ�) ��Ʈ�� ���̿� ��ġ�Ѵ�. ��Ʈ�� �ۿ���
server.example.com
�� �ܺ� �ּҸ�
(172.20.30.40
) �ǹ��ϰ�, ��Ʈ�� ���ο��� ����
�̸��� ���� �ּҷ� (192.168.1.1
) ����Ѵ�.
������ VirtualHost
���� �Ѱ��� ���ο� �ܺ�
���信 ���� ������ ������ �� �ִ�.
NameVirtualHost 192.168.1.1
NameVirtualHost 172.20.30.40
<VirtualHost 192.168.1.1 172.20.30.40>
DocumentRoot /www/server1
ServerName server.example.com
ServerAlias server
</VirtualHost>
���� �� ��Ʈ������ ���� ��û�� ����
VirtualHost
���� �����Ѵ�.
���� ��Ʈ�������� ������ ȣ��Ʈ��
server.example.com
��� �̸�
server
�� �����ϴ�.
���� ���� ������ IP �ּ� ��� *
��
����Ͽ� ������ ��� �ּҿ� �����ϰ� ������ ��
�ִ�.
���� IP�� ���� ��Ʈ���� ���� �ٸ� �������� �����Ѵٰ� ��������. �̴� "NameVirtualHost" �±� ��Ʈ�� �����ϸ� �����ϴ�. NameVirtualHost name:port���� <VirtualHost name:port>�� Ȥ�� Listen ���þ ����ϸ� �ȵȴ�.
Listen 80
Listen 8080
NameVirtualHost 172.20.30.40:80
NameVirtualHost 172.20.30.40:8080
<VirtualHost 172.20.30.40:80>
ServerName www.example.com
DocumentRoot /www/domain-80
</VirtualHost>
<VirtualHost 172.20.30.40:8080>
ServerName www.example.com
DocumentRoot /www/domain-8080
</VirtualHost>
<VirtualHost 172.20.30.40:80>
ServerName www.example.org
DocumentRoot /www/otherdomain-80
</VirtualHost>
<VirtualHost 172.20.30.40:8080>
ServerName www.example.org
DocumentRoot /www/otherdomain-8080
</VirtualHost>
������ ���� www.example.com
��
www.example.org
�� �ش��ϴ� �� IP �ּҸ�
(172.20.30.40
�� 172.20.30.50
)
������.
Listen 80
<VirtualHost 172.20.30.40>
DocumentRoot /www/example1
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.50>
DocumentRoot /www/example2
ServerName www.example.org
</VirtualHost>
<VirtualHost>
���þ�� ������ �ּҿ�
�ش������ʴ� �ּҷ� (���� ���, localhost
)
��û�� ������ �ּ����� �ִ� ��� �ּ����� �����Ѵ�.
������ ���� www.example.com
��
www.example.org
�� �ش��ϴ� �� IP �ּҸ�
(172.20.30.40
�� 172.20.30.50
)
������. �� IP�� 80���� 8080�� ��Ʈ�� ����ȣ��Ʈ�� ������.
Listen 172.20.30.40:80
Listen 172.20.30.40:8080
Listen 172.20.30.50:80
Listen 172.20.30.50:8080
<VirtualHost 172.20.30.40:80>
DocumentRoot /www/example1-80
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.40:8080>
DocumentRoot /www/example1-8080
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.50:80>
DocumentRoot /www/example2-80
ServerName www.example.org
</VirtualHost>
<VirtualHost 172.20.30.50:8080>
DocumentRoot /www/example2-8080
ServerName www.example.org
</VirtualHost>
�ּ��� ����� �̸���� ����ȣ��Ʈ��, �ٸ� ���� IP��� ����ȣ��Ʈ�� �����ϰ� �ʹ�.
Listen 80
NameVirtualHost 172.20.30.40
<VirtualHost 172.20.30.40>
DocumentRoot /www/example1
ServerName www.example.com
</VirtualHost>
<VirtualHost 172.20.30.40>
DocumentRoot /www/example2
ServerName www.example.org
</VirtualHost>
<VirtualHost 172.20.30.40>
DocumentRoot /www/example3
ServerName www.example3.net
</VirtualHost>
# IP-���
<VirtualHost 172.20.30.50>
DocumentRoot /www/example4
ServerName www.example4.edu
</VirtualHost>
<VirtualHost 172.20.30.60>
DocumentRoot /www/example5
ServerName www.example5.gov
</VirtualHost>
_default_
����ȣ��Ʈ
����ϱ�_default_
����ȣ��Ʈ� ����ȣ��Ʈ���� �ش��������� IP �ּҿ� ��Ʈ�� ���� ��� ��û�� ó���ϱ�.
<VirtualHost _default_:*>
DocumentRoot /www/default
</VirtualHost>
default(�⺻) ����ȣ��Ʈ�� ��Ʈ�� ���ϵ�ī�带 ����Ͽ� � ��û�� �ּ����� �������� �����.
default ����ȣ��Ʈ�� ����� �̸���� ����ȣ��Ʈ�� ����ϴ�
�ּ�/��Ʈ���� ��û�� �������� �ʴ´�. �� �� ���ų�
Host:
����� ������ ��û�� �� ������ �̸����
����ȣ��Ʈ(�������Ͽ���
�ּ�/��Ʈ�� ó������ ���� ����ȣ��Ʈ)�� �����Ѵ�.
AliasMatch
��
RewriteRule
��
����Ͽ� � ��û�� Ư�� ������(Ȥ�� ��ũ��Ʈ)��
���ۼ���(rewrite) �� �ִ�.
_default_
����ȣ��Ʈ���� ���� ������, ������ ���� ��Ʈ�� ��ٸ��� 80��
��Ʈ�� ���ؼ� �߰��� _default_
����ȣ��Ʈ��
����ϰ� �ʹ�.
<VirtualHost _default_:80>
DocumentRoot /www/default80
# ...
</VirtualHost>
<VirtualHost _default_:*>
DocumentRoot /www/default
# ...
</VirtualHost>
80�� ��Ʈ�� ���� default ����ȣ��Ʈ�� (�ݵ�� ���ϵ�ī�� ��Ʈ�� ���� �⺻ ����ȣ��Ʈ ������ ���;� �Ѵ�) ������������ IP �ּҷ� ������ ��� ��û�� �����Ѵ�. �ּ����� ����� ��û�� �������� ���Ѵ�.
_default_
����ȣ��Ʈ80�� ��Ʈ�� ���ؼ��� default ����ȣ��Ʈ�� ����� �ʹ�.
<VirtualHost _default_:80>
DocumentRoot /www/default
...
</VirtualHost>
��Ʈ 80���� ������������ �ּҿ� ���� ��û�� �⺻ ����ȣ��Ʈ�� �����ϰ�, �ٸ� ������������ �ּҿ� ��Ʈ�� ���� ��û�� �� ������ �����Ѵ�.
(�̸������ ù��° ������) ȣ��Ʈ��
www.example.org
�� ���� �̸���� ����ȣ��Ʈ��
�ڽ��� IP �ּҸ� ������ �Ѵ�. �̸���� ����ȣ��Ʈ�� ����
IP �ּҸ� ij���ϴ� ���Ӽ����� ���Ͻÿ��� ������ ���ϱ�����
�ű�� ���� �� ��θ� �����ϰ� �ʹ�.
����� VirtualHost
���þ �� IP �ּҸ���
(172.20.30.50
) �߰��ϸ�ǹǷ� ����.
Listen 80
ServerName www.example.com
DocumentRoot /www/example1
NameVirtualHost 172.20.30.40
<VirtualHost 172.20.30.40 172.20.30.50>
DocumentRoot /www/example2
ServerName www.example.org
# ...
</VirtualHost>
<VirtualHost 172.20.30.40>
DocumentRoot /www/example3
ServerName www.example.net
ServerAlias *.example.net
# ...
</VirtualHost>
���� (IP��� ����ȣ��Ʈ�� ����) ���ο� �ּҿ� (�̸���� ����ȣ��Ʈ�� ����) ���� �ּ� ��� ����ȣ��Ʈ�� ������ �� �ִ�.
ServerPath
���þ� ����ϱ��� �̸���� ����ȣ��Ʈ�� ���� ������ �ִ�. �ùٸ�
����ȣ��Ʈ�� �����ϱ����� Ŭ���̾�Ʈ�� �ùٸ�
Host:
����� ������ �Ѵ�. ������ HTTP/1.0
Ŭ���̾�Ʈ�� �� ����� ������ ���ϸ� ����ġ�� Ŭ���̾�Ʈ��
� ����ȣ��Ʈ�� �������ϴ��� �� �� ���� (���� ������
����ȣ��Ʈ�� ��û�� �����Ѵ�). ������ �������� ������ ȣȯ��
�����ϱ����� ������ ����ȣ��Ʈ�� �����, ��� �̸����
����ȣ��Ʈ�� URL ���λ縦 �����ϴ� ��ũ ��� ��������
�д�.
NameVirtualHost 172.20.30.40
<VirtualHost 172.20.30.40>
# primary vhost
DocumentRoot /www/subdomain
RewriteEngine On
RewriteRule ^/.* /www/subdomain/index.html
# ...
</VirtualHost>
<VirtualHost 172.20.30.40>
DocumentRoot /www/subdomain/sub1
ServerName www.sub1.domain.tld
ServerPath /sub1/
RewriteEngine On
RewriteRule ^(/sub1/.*) /www/subdomain$1
# ...
</VirtualHost>
<VirtualHost 172.20.30.40>
DocumentRoot /www/subdomain/sub2
ServerName www.sub2.domain.tld
ServerPath /sub2/
RewriteEngine On
RewriteRule ^(/sub2/.*) /www/subdomain$1
# ...
</VirtualHost>
ServerPath
���þ����
URL http://www.sub1.domain.tld/sub1/
�� ����
��û�� �� subl-����ȣ��Ʈ�� �����Ѵ�.
Ŭ���̾�Ʈ�� �ùٸ� Host:
����� �����ٸ�,
URL http://www.sub1.domain.tld/
�� ���� ��û��
subl-����ȣ��Ʈ������ �����Ѵ�. ���� Host:
�����
������������ Ŭ���̾�Ʈ�� ������ ȣ��Ʈ�� �ִ� ������������
���Եȴ�.
��� ������ ������ �����϶�: Ŭ���̾�Ʈ��
Host:
����� ������������
http://www.sub2.domain.tld/sub1/
�� ���� ��û��
subl-����ȣ��Ʈ�� �����Ѵ�.
RewriteRule
���þ ����Ͽ� �ùٸ� Host:
����� ������
Ŭ���̾�Ʈ�� (���� ���, URL ��ġ�簡 �ְų� ����)
�� URL�� ��� ����� �� �ִ�.