为多个虚拟主机设置 httpd-vhosts.conf

为多个虚拟主机设置 httpd-vhosts.conf

我在家里使用 xampp 进行了一个简单的测试设置,当我尝试在此机器上设置多个虚拟主机时,出现了非常奇怪的行为。这是我的 vhosts 文件:

 NameVirtualHost *:80
 <VirtualHost *:80>
  ServerAdmin [email protected]
  ServerName foo
  DocumentRoot "D:\wamp\xampp\htdocs\foo"
  ErrorLog logs/foo-error_log
  CustomLog logs/foo-access_log common
    <Directory "D:\wamp\xampp\htdocs\foo">
      Options Indexes FollowSymLinks Includes execCGI
      AllowOverride All
      Order Allow,Deny
      Allow From All
    </Directory>
 </VirtualHost>

 <VirtualHost *:80>
    ServerAdmin [email protected]
    ServerName bar
    DocumentRoot "D:\wamp\xampp\htdocs\bar"
    ErrorLog logs/bar-error_log
    CustomLog logs/bar-access_log common
    <Directory "D:\wamp\xampp\htdocs\bar">
      Options Indexes FollowSymLinks Includes execCGI
      AllowOverride All
      Order Allow,Deny
      Allow From All
    </Directory>
  </VirtualHost>

当我尝试运行访问第一个站点时,它按预期工作。

当我尝试运行第二个网站时,我看到的是两个网站奇怪的混合体。这是最奇怪的事情。

答案1

首先,您需要在服务器名中指定顶级域名 (tld),即 foo.com 或 www.foo.com。

另一方面...您是否已设置主机文件以解析 foo.com 或 www.foo.com?如果没有,请转到 windows->system32->drivers->etc->hosts 并添加如下一行:127.0.0.1 www.foo.com

相关内容