Apache - ServerName中的连字符断开VirtualHost

时间:2013-12-04 22:08:59

标签: apache virtualhost hyphen

如果ServerName中有连字符,我无法让Apache的配置返回正确的页面。我在这里找到一个标题为“虚拟主机条目中不允许虚线?”的页面,但是它正在处理DocumentRoot中的连字符,而不是ServerName。在任何情况下,它都没有解决我的问题,我一直无法找到任何其他问题的参考。

我在最近收购的Ubuntu 12.04服务器上运行Apache,正在设置多个虚拟主机(VH)。 Ubuntu的配置是有条理的,因此您可以使用可用站点和站点启用的文件夹。放置在sites-available中的单独文件用于每个VH。启用VH只需要将sites-available文件夹中的文件符号链接到启用站点的文件夹,然后重新启动Apache。

我已经有几个工作的VH了。这是一个简单的方法,因为它只是将工作文件复制到新文件名,并更改一些变量。

我所有正常工作的条目在ServerName或ServerAlias中都没有连字符。一个有连字符的条目不起作用。 Apache不返回正确的页面,而是返回主机的基页(告诉我DNS正常)。

我尝试用引号括起ServerName和ServerAlias,有和没有。没有变化。

很多域使用连字符,我不能成为唯一有这个问题的域名。有没有人找到解决方法?这是我的配置:

 <VirtualHost *:80>
 ServerAdmin webmaster@localhost
 ServerName datacore-inc.com
 ServerAlias www.datacore-inc.com
 DocumentRoot /home/web/datacore/www
 <Directory />
         Options FollowSymLinks
         AllowOverride None
 </Directory>
 <Directory /home/web/datacore/www/>
         Options Indexes FollowSymLinks MultiViews
         AllowOverride None
         Order allow,deny
         allow from all
 </Directory>

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题,并认为问题来自ServerName中的连字符。但实际上我已经两次宣布VirtualHost。我已经删除了其中一个并解决了问题。

最诚挚的问候,