为了使得对不同模块的安装尽量简单,Mandrakelinux 的 ADVX Apache 版本将配置文件分成许多部分。
在这一文件中,有一个配置参数十分重要:ServerName。
您应该删除注释符,并把 localhost 改为您服务器的真实域名。您不能自造一个,必须要有相应的 DNS 条目。如果您使用 ADSL 或者其它的动态 IP 连接,您可以使用 dyndns、noip 或是其它相同的服务以为您的服务器提供 DNS。如果您的服务器将用于 Intranet(内部网)中的私有网络,您可以使用 IP 代替域名。
除非您知道您在做什么,请不要修改该配置文件的其它部分。尤其,如果您更改了 DocumentRoot 参数,那您在随后安装附加网页程序的时候会有问题。因为它们都被配置为安装到 /var/www/html/。
如果您想要调整您的 Web 服务器的性能,您可以查看 StartServers 和 MaxClients 参数。繁忙的站点可能会需要增加这些值。这会需要更多的内存,但是可以在同一时刻响应更多的请求。
如果您查看了 httpd.conf、httpd2.conf、或 httpd-perl.conf,您会发现它们包含了 conf/vhosts/Vhosts.conf,而其中包括额外的两个参数:DynamicVhosts 和 VirtualHomePages。
如果您查看 /etc/httpd/conf/vhosts/Vhosts.conf,您会发现两个虚拟主机的示例。第一个是基于 IP 的,而第二个是 Named VirtualHosts(虚拟域名主机)。
第一个示例用于您有多个 IP 地址的情况下,例如,分别对内部网的内部地址和普通外部网站的外部地址。
第二个示例用于您只有一个 IP 地址却希望配置多个网站的情况。此时,您将期望使用的 IP 地址指定为虚拟域名主机(Named Virtual Host),而后就可以对同一 IP 通过不同的服务器域名访问多个虚拟主机。
NameVirtualHost 192.168.2.1 <VirtualHost 192.168.2.1> ServerName accounting.mycompany.com ServerPath /accounting DocumentRoot /home/accounting </VirtualHost> <VirtualHost 192.168.2.1> ServerName sales.mycompany.com ServerPath /sales DocumentRoot /home/sales </VirtualHost> |
当浏览器请求访问 accounting.mycompany.com 时,Web 服务器将会查找 /home/accounting/ 目录并发送其中的 HTML 页面。当浏览器请求访问 sales.mycompany.com 时,它会查找 /home/sales/ 目录。
使用 ServerPath 是为了与旧的浏览器(例如 Netscape 2.0 或 Internet Explorer 3.0)兼容,它们不能访问虚拟域名主机。在这种情况下,这些旧的浏览器的用户可以通过 www.mycompany.com/sales 访问相应网站。
DynamicVhosts.conf 文件对于大学等需要有多个网站的公司和组织十分有用。在此情形下,您可以将每一个网站放在同一个目录下,而 Apache 会自动激活域名。例如,您可以有 /www/hosts/www.company1.com、/www/hosts/www.company2.com 等。
VirtualHomePages.conf 文件用于自动建立类似 user1.company.com、user2.company.com、user3.company.com 等的网站。这需要在您的域名中设置一个通配符以便对 *.company.com 的访问会连到 Apache Web 服务器。
/etc/httpd/conf/apache-mime.types 文件控制了对于特定的文件扩展名浏览器将会打开什么程序。例如,如果您有 Microsoft Excel® 文件(".xls"),该文件将通知浏览器使用 application/msexcel 这一 MIME 类型对应的默认应用程序。