AWS eb部署更改httpd.conf虚拟主机文档根目录

时间:2019-03-21 17:44:14

标签: apache amazon-web-services virtualhost httpd.conf amazon-elastic-beanstalk

我运行一个AWS ElasicBeanstalk Apache服务器。有一个具有不同DocumentRoot的子域(请参见下文)。当我使用eb deploy然后ssh进入计算机以手动更改/etc/http/conf/httpd.conf文件时,一切正常。

如果我再次eb deploy ,则http.conf文件中的DocumentRoot"/var/www/html/sub/"变为"/var/www/html/",其余的该文件保持不变。

我想eb deploy必须以某种方式重写httpd.conf文件,但是我对为什么只有文档根目录更改感到困惑。

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot "/var/www/html/"
</VirtualHost>

<VirtualHost *:80>
    ServerName sub.example.com
    DocumentRoot "/var/www/html/sub/"
</VirtualHost>

有人知道我如何使子域正常工作吗?

1 个答案:

答案 0 :(得分:0)

通过Elastic Beanstalk功能,无论我们对实例进行手动更改如何,它只会暂时反映在该实例上。如果重新启动/重建实例,则更改将消失。

如果要将更改永久应用于所有实例,则需要使用.ebextensions文件夹以及文件夹中的相应.config文件。您可以使用.ebextensions功能指定对服务器软件(apache,php等)的配置更改。

.ebextensions文件夹将一直是代码.zip文件的一部分。

您可以参考以下链接以获取有关.ebextensions的更多帮助: https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html