<-
Apache > HTTP Server > �ĵ� > �汾2.2 > ��������
���� ��л | �������� | ��ƪ���ߣ��𲽹� | ��ҳ�����£�2006��1��17�� | ��ȡ���°汾

�����о�����������ƥ��

�����������ֵĴ�����Apache 1.3�н�������ȫ����д�����ĵ���ͼ��ϸ����Apache�ڽ��ܵ���������ȷ��ʹ����һ���������������ŷ������µ�NameVirtualHostָ��İ����£��������������ñ�1.3����ǰ���Ӽ򵥺Ͱ�ȫ��

�����ֻ���������ܹ���������Ը�����������⣬������һЩʾ����

top

���������ļ�

��<VirtualHost>���ö�����һ����������(main_server)���а��������ж��塣������<VirtualHost>���ö��ж���Ľ�����������(vhost)�������������

Listen, ServerName, ServerPath, ServerAliasָ����Գ�����һ������������ε��κεط�������ÿ��ָ��Ḳ��ǰ����ֵ�ͬ������(���Ǹ�������������)��

������������Listenָ���Ĭ��ֵ��80������������û��Ĭ�ϵ�ServerPath��ServerAliasָ��ֵ��ServerName��Ĭ��ֵ���ɷ�������IP��ַ�ƶ϶�����

����������Listenָ�����������ܣ���һ�Ǿ���Apache��Ҫ�󶨵�����˿ڣ���������ض�����ָ������URI��ʹ�õĶ˿ںš�

�������������������������Ķ˿�����Ӱ�쵽Apache�ļ����˿ڡ�

ÿ��VirtualHostָ���еĵ�ַ�����Ը���һ����ѡ�Ķ˿ڡ����û�н����ر��ָ��������˿�Ĭ��Ϊ���������������һ��Listenָ��ָ����ֵ������Ķ˿�"*"��ʾƥ�����ж˿ڡ�������һϵ�е�ַ(������DNS��ѯ��������A��¼)ͳ��������������ַ��(address set)��

���û�ж�һ���ض���IP��ַʹ��NameVirtualHostָ���ô��һ��ʹ�������ַ����������������Ϊ����IP������������IP��ַҲ������ͨ���"*"��ʾ��

���ʹ���˻���������������������ô������NameVirtualHostָ��Ϊ���������������������ָ��IP��ַ�������仰˵���������������ļ���ͨ��NameVirtualHostָ��ָ������������ӳ��(CNAME)��IP��ַ��

����ʹ�úܶ�NameVirtualHostָ�����ֱ��Ӧһ��NameVirtualHostָ�������ÿ���ض���"IP:port"����˵��ֻ��ʹ��һ��NameVirtualHostָ�

NameVirtualHost��VirtualHostָ����ֵ�˳�򲢲���Ҫ��ֻ�ж�Ӧͬһ��IP��ַ��VirtualHostָ��Ĵ��������Ҫ�ġ��������������������������ȫ��ͬ�ģ�

NameVirtualHost 111.22.33.44
<VirtualHost 111.22.33.44>
# server A
...
</VirtualHost>
<VirtualHost 111.22.33.44>
# server B
...
</VirtualHost>

NameVirtualHost 111.22.33.55
<VirtualHost 111.22.33.55>
# server C
...
</VirtualHost>
<VirtualHost 111.22.33.55>
# server D
...
</VirtualHost>

<VirtualHost 111.22.33.44>
# server A
</VirtualHost>
<VirtualHost 111.22.33.55>
# server C
...
</VirtualHost>
<VirtualHost 111.22.33.44>
# server B
...
</VirtualHost>
<VirtualHost 111.22.33.55>
# server D
...
</VirtualHost>

NameVirtualHost 111.22.33.44
NameVirtualHost 111.22.33.55

(Ϊ��ʹ���������ļ����߿ɶ��ԣ������Ƽ���ʹ����ߵĸ�ʽ)

�ڽ�����VirtualHostָ�������������������������������VirtualHostָ���е�һ�����ֶ�Ӧ�Ķ˿���ΪĬ�ϵ�Listen�˿ڡ�

�������������ָ��ͬһ����ַ���Ļ���VirtualHostָ���е����������б�����õ���ServerAliasָ��һ���Ĵ���(�����ᱻ����ServerAlias��串��)����ע�⣬������������Դ���Listenָ�����Ӱ�쵽�Ǹ���ַ���Ķ˿ںš�

�ڳ�ʼ���Ĺ����У�����Ϊÿһ��IP��ַ����һ���б������뵽һ��ɢ�б��С�������IP��ַ������һ��NameVirtualHostָ���еģ�����б����������ָ��Ϊ���IP��ַ�Ļ����������������������û����������������IP��ַ����ôNameVirtualHostָ������ԣ���������־�м�¼һ��������Ϣ�����ڻ���IP�������������ԣ����ɢ�б��е��б�Ϊ�ա�

��Ϊʹ���˸�Ч��ɢ���㷨��ʹ�������󵽴��ʱ�������в���IP��ַ�Ŀ�����ú�С�����߸������迼�ǡ�����������Ϊֻ�����һ���˽���λ��ͬ��IP��ַ�����Ż���

����������ÿ���������г�ʼֵ���ر���������Щ��

  1. �����������û��ServerAdmin, ResourceConfig, AccessConfig, Timeout, KeepAliveTimeout, KeepAlive, MaxKeepAliveRequests, ReceiveBufferSize, SendBufferSizeָ���ô�������������̳����ǵ�ֵ��(Ҳ����˵��ʹ�������������������ֵ��趨ֵ)��
  2. ����������Ĭ��Ŀ¼Ȩ�޽��̳���������������(��������ģ�����ÿ��Ŀ¼��������Ϣ)��
  3. �����������̳�����������ÿ��ģ������������������á�

�����ϣ����������ڽ���ÿ������������ʱ�򣬳䵱��һ��Ĭ��ֵ������Ľ�ɫ������Щ���������������еĶ����λ�����޹ؽ�Ҫ�ġ���������������������������������֮ǰ���Ѿ��������ˡ����Լ�ʹһ���������������ó�����������������ĺ��棬��Ҳͬ����Ӱ�쵽�������������á�

���û�ж������������е�ServerName ����ô�����������httpd����Ļ����������������档���ǽ���DNS���Ҵ�ServerName���ص�IP��ַ��Ϊ����������ַ��(main_server address set)��

��û�ж���ServerName������£�һ��������������������Ĭ�ϲ��ö�����������ʱ��VirtualHostָ�������ȳ��ֵĵ�ַ��

����ʹ����"_default_"ͨ��������������������������������ͬ��ServerName ��

top

��������ƥ��

������������������ȷ����һ���ض�������ʹ���ĸ�����������

ɢ�б����

���ͻ��˵�һ�����ӵ�ʱ�򣬻���ڲ���IPɢ�б��в��ҿͻ�����Ҫ���ӵ�IP��ַ��

�������ʧ��(û���ҵ���Ӧ��IP��ַ)����������Ķ˿��ִ���һ��"_default_"������������ô������󽫻�����������������ŷ������û���ҵ�������"_default_"������������ô������󽫻��������������ŷ���

�����ɢ�б���û���ҵ�IP��ַ��������һ��"NameVirtualHost *"ָ����������Ķ˿ں���ƥ�䣬��ô����������������������������

������ҳɹ�(�ҵ��˶�Ӧ�����IP��ַ���б�)����һ�����ǿ�����Ҫ�������һ������IP��������������һ����������������������

����IP����������

������ص��б��������б�Ϊ�գ���ô���Ǵ���ľ���һ������IP���������������������������ֱ�ӽ��д�����������������衣

������������������

������ص������б����һ���������������Ľṹ����ô���Ǵ���ľ���һ��������������������������б����������������˳���������ļ�����ӦVirtualHostָ����ֵ�˳������ͬ�ġ�

����б��е�һ����������(Ҳ�����������ļ��е�һ��ָ�������IP��ַ����������)�Դ�������������ߵ����ȼ������ж�δ֪����������û��"Host:"ͷ�����󶼽��������д���

����ͻ������������ṩ��һ��"Host:"ͷ����ô�����б��в��ҵ�һ��ServerName��ServerAlias������ϵ����������������������ŷ�������󡣾���"Host:"ͷ�п��԰����˿ںţ���Apache���ǻ����յ�������Ǹ���ʵ�˿�������ƥ�䡣

����ͻ����ύ��һ��������"Host:"ͷ��HTTP/1.0���������ǽ��޷�ȷ�Ͽͻ�����Ҫ�����Ǹ������������������һ��ServerPath��ͻ����ύ�������е�URI���Ӧ����ô�б��е�һ���������������������������ŷ��������

��������Ҳ�����Ӧ��������������ô������󽫻��ɿͻ������ӵ�IP��Ӧ���б��еĵ�һ��������Ķ˿���ͬ�������������ŷ�(��ǰ����)��

�־�����

����IP���Ҷ�һ���ض���TCP/IP����ִֻ��һ�������ڳ־�����(KeepAlive)�У�ÿ�����󶼻����һ�������IJ��ҹ��̡����仰˵��һ���ͻ�����һ���־������п�����λ�ڲ�ͬ�Ļ�������������������ҳ���������

����URI

��������ύ��URI��һ������URI�������е��������Ͷ˿ں��ֺ�����������ij��������������ϣ�����Ҳ����Ϊ�������ύ����ĵ�ַ�Ͷ˿��������ô������������/������/�˿�ǰ׺����Ĩ�������������URIΪ��Ӧ�����������������������ŷ�����������������������������URI������ԭ�����������󽫱���Ϊһ������������

����¼

top

����

��ΪDNS����ҳ��С���ɵĸ��ӣ�������Щ����ļ��ɣ�