/etc/httpd/conf.d/vhost.conf 中的虚拟主机配置错误
Posted
技术标签:
【中文标题】/etc/httpd/conf.d/vhost.conf 中的虚拟主机配置错误【英文标题】:wrong vhost configuration in /etc/httpd/conf.d/vhost.conf 【发布时间】:2015-03-25 22:06:53 【问题描述】:我在/etc/httpd/conf.d/vhost.conf
的虚拟主机配置如下所示:
NameVirtualHost *
<VirtualHost *>
ServerName www.example.com
DocumentRoot /var/www/html/site
</VirtualHost>
<VirtualHost *>
ServerName en.example.com
DocumentRoot /var/www/html/english
</VirtualHost>
<VirtualHost *>
ServerName photo.example.com
DocumentRoot /var/www/html/photo
</VirtualHost>
<VirtualHost *>
ServerName music.example.com
DocumentRoot /var/www/html/music
</VirtualHost>
<VirtualHost *>
ServerName video.example.com
DocumentRoot /var/www/html/video
</VirtualHost>
现在,只有www.example.com
在/var/www/html/site
显示正确的站点。所有其他子域都提供500 internal server error
。我做错了什么?
更新:
真的很抱歉,伙计们...我的域名人向我确认我的域名已正确路由到我的 IP 地址....只有在我做了dig en.example.com
(我应该早点做的事情)之后我才做意识到我的域名人犯了一个愚蠢的错误配置......网址甚至没有到达我的IP地址......真的很抱歉给大家带来麻烦:( :( - 这个vhost.conf
文件没问题
【问题讨论】:
您是否启用了a2ensite
的新网站?为不同的虚拟主机使用单独的文件也是一种很好的做法。
我没有使用任何a2ensite
嗯,基本上这取决于您使用的发行版。但是基于 debian 的发行版使用的文件系统在 /etc/apache2 下有一个文件夹 sites-available,您应该在其中为每个主机创建一个 .conf 文件。然后,当您执行 come a2ensite 时,它会在另一个名为 sites-enabled 的文件夹中创建一个符号链接,该文件夹是启用 Vhost 的文件夹。那么你只需要重新加载apache服务。
通过apache docs :: VirtualHost Examples
我真的很抱歉,伙计们......我的域名人向我确认我的域名被正确路由到我的 IP 地址......只有在我做了 dig en.example.com
之后(我应该这样做之前已经做了很多)我是否意识到我的域名人犯了一个愚蠢的错误配置......网址甚至没有到达我的IP地址......真的很抱歉伙计们:(:(
【参考方案1】:
# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80
<VirtualHost *:80>
ServerName www.example.com
DocumentRoot /var/www/html/site
</VirtualHost>
<VirtualHost *:80>
ServerName en.example.com
DocumentRoot /var/www/html/english
</VirtualHost>
<VirtualHost *:80>
ServerName photo.example.com
DocumentRoot /var/www/html/photo
</VirtualHost>
<VirtualHost *:80>
ServerName music.example.com
DocumentRoot /var/www/html/music
</VirtualHost>
<VirtualHost *:80>
ServerName video.example.com
DocumentRoot /var/www/html/video
</VirtualHost>
【讨论】:
以上是关于/etc/httpd/conf.d/vhost.conf 中的虚拟主机配置错误的主要内容,如果未能解决你的问题,请参考以下文章