AWS EC2 上的 VirtualHosts 不工作

VirtualHosts on AWS EC2 is not working

我想在一个 EC2 instance.Both 域上设置多个网站托管,指向一个 IP 地址 我将 /etc/httpd/conf/httpd.conf 文件配置为-

#NameVirtualHost *
<VirtualHost *>
    DocumentRoot "/var/www/html"
    ServerName domain1.com
    ServerAlias www.domain1.com
    <Directory "/var/www/html">
    AllowOverride All
    Require all Granted
    </Directory>
</VirtualHost>
<VirtualHost *>
    DocumentRoot "/var/www/domain2"
    ServerName domain2.com
    ServerAlias www.domain2.com
    <Directory "/var/www/domain2">
    AllowOverride All
    Require all Granted
    </Directory>
#    RewriteEngine On
</VirtualHost>

问题是服务器只指向 domain1.com 当我将 domain2.com 放入 URL 时,它会显示 apache 默认页面 "Amazon Linux AMI Test Page"

我评论 NameVirtualHost * 的原因是——在重新启动 httpd 服务后,我得到

启动httpd: AH00548: NameVirtualHost 无效,将在下个版本中移除/etc/httpd/conf/httpd.conf:355

我还应该做什么设置?请帮助我。

谢谢

您的虚拟主机配置缺少一个端口。而不是

<VirtualHost *>

尝试

<VirtualHost *:80>

经过大量的试验和错误;终于成功了.. :)

我在 httpd.conf 文件中更改为以下代码-

 <VirtualHost *:80>
    ServerName alivefruits.com
    ServerAlias www.alivefruits.com
    DocumentRoot "/var/www/html"
</VirtualHost>
<VirtualHost *:80>
    ServerName revealautomation.com
    ServerAlias www.revealautomation.com
    DocumentRoot "/var/www/html/reveal"
    <Directory "/var/www/html/reveal">
    AllowOverride All
    Require all Granted
    </Directory>
</VirtualHost>