0

你好,我有 2 个域 domain1.com,domain2.com 都在 domain1.com 下的同一个服务器中我想设置 VirtualHost 来处理它们

像这样:

<VirtualHost domain1.com:80>
DocumentRoot /var/www/html
ServerName domain1.com
<Directory /var/www/html>
  AllowOverride AuthConfig
  Order allow,deny
  Allow from all
  Options -Indexes
</Directory>
</VirtualHost>


<VirtualHost domain2.com:80>
DocumentRoot /var/www/domain2
ServerName domain2.com
<Directory /var/www/domain2>
  AllowOverride AuthConfig
  Order allow,deny
  Allow from all
  Options -Indexes
</Directory>
</VirtualHost>.

但由于某种原因,服务器只将我发送到第一个

我也试过这样

<VirtualHost *:80>
DocumentRoot /var/www/html
ServerName domain1.com
<Directory /var/www/html>
  AllowOverride AuthConfig
  Order allow,deny
  Allow from all
  Options -Indexes
</Directory>
</VirtualHost>


<VirtualHost *:80>
DocumentRoot /var/www/domain2
ServerName domain2.com
<Directory /var/www/domain2>
  AllowOverride AuthConfig
  Order allow,deny
  Allow from all
  Options -Indexes
</Directory>
</VirtualHost>.

有人知道如何解决这个问题吗?

4

1 回答 1

0

我认为您缺少该NameVirtualHost指令。

NameVirtualHost *:80

<VirtualHost *>
  DocumentRoot /var/www/html
  ServerName domain1.com
  <Directory /var/www/html>
    AllowOverride AuthConfig
    Order allow,deny
    Allow from all
    Options -Indexes
  </Directory>
</VirtualHost>


<VirtualHost *>
  DocumentRoot /var/www/domain2
  ServerName domain2.com
  <Directory /var/www/domain2>
    AllowOverride AuthConfig
    Order allow,deny
    Allow from all
    Options -Indexes
  </Directory>
</VirtualHost>

没有它VirtualHost,在使用基于名称的虚拟主机时,您的第一个将用于所有访问。

于 2013-10-10T13:57:35.757 回答