我已经搜索了两天,但找不到这种行为的解释。
我已关注 AWS 文档。我已经使用推荐的 Amazon Linux AMI (aki-c48f51d9) 启动了 ec2 实例。然后根据我的需要定制我的 ec2 实例,包括 Apache 的配置:/etc/httpd/conf/httpd.conf 我的定制创建了两个虚拟主机,如下所示:
<VirtualHost *:80>
ServerName www.domain1.com
ServerAlias domain1.com
ServerAdmin support@domain1.com
DocumentRoot "/var/www/html/folder1"
</VirtualHost>
<VirtualHost *:80>
ServerName subdomain.domain1.com
ServerAdmin support@domain1.com
DocumentRoot "/var/www/html/folder2"
</VirtualHost>
这已经过测试并按预期工作,将对 subdomain.domain1.com 的请求路由到 /var/www/html/folder2。
所以我继续从这个 ec2 实例创建一个自定义 AMI。成功创建 AMI 后,我使用此 AMI 启动了一个新的 ec2 实例。现在,令我惊讶的是,在这个新的 ec2 实例上,我的第二个虚拟主机的配置略微更改为:
<VirtualHost *:80>
ServerName subdomain.domain1.com
ServerAdmin support@domain1.com
DocumentRoot "/var/www/html/folder1"
</VirtualHost>
请注意,DocumentRoot 以某种方式从原始的“folder2”更改为“folder1”,与默认虚拟主机(第一个)相同。发生了什么?我将不胜感激任何可以为我解决此问题的帮助。提前致谢!