VirtualHost不工作​​ – 总是显示默认值

现在我一直在努力工作几个小时。 我正尝试在VPS上使用Apache设置虚拟主机

我的站点可用文件夹中有以下虚拟主机文件:

<VirtualHost *:80> ServerAdmin webmaster@localhost DocumentRoot /var/www/domain.ie <Directory /> Options FollowSymLinks AllowOverride None </Directory> <Directory /var/www/domain.ie> Options Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all </Directory> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ <Directory "/usr/lib/cgi-bin"> AllowOverride None Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log # Possible values include: debug, info, notice, warn, error, crit, # alert, emerg. LogLevel warn CustomLog ${APACHE_LOG_DIR}/access.log combined Alias /doc/ "/usr/share/doc/" <Directory "/usr/share/doc/"> Options Indexes MultiViews FollowSymLinks AllowOverride None Order deny,allow Deny from all Allow from 127.0.0.0/255.0.0.0 ::1/128 </Directory> 

我在虚拟主机上发出了a2ensite domain.ie命令。

我也发出了重新启动和重新加载命令。 我也停止了Apache服务器,并启动它,使用这两个命令,看看Apache是​​否实际上重新启动,它是。 我也完全重新启动了VPS盒子。

文档根文件夹确实存在,但apache服务仍然提供默认的apache页面。 我宁愿不要禁用默认的虚拟主机。

我在这里错过了一步吗? 我应该在/ etc / hosts中添加一些东西给我的hosts文件吗? domain.ie已经被apache添加了: 127.0.0.1 localhost.localdomain localhost domain.ie

任何帮助,将不胜感激。

您需要在<VirtualHost>块中使用ServerName指令,以便Apache知道何时从该虚拟主机提供内容。

 NameVirtualHost *:80 

到你的apacheconfiguration也是,你的文件看起来没有

 </VirtualHost> 

更多文档在这里: http : //httpd.apache.org/docs/2.2/vhosts/name-based.html

在我的<VirtualHost ...>指令中设置ServerName之前,当我定义DocumentRoot时,我也遇到了问题。