AWS python Flask EB .ebextensions .conf文件不起作用

时间:2020-07-31 18:40:40

标签: python amazon-web-services nginx flask amazon-elastic-beanstalk

.conf文件

files:
  "/etc/nginx/conf.d/01_proxy.conf":
    mode: "000644"
    owner: root
    group: root
    content: |
      client_max_body_size 200M;

container_commands:                         
  01_reload_nginx:                           
    command: "sudo nginx -s reload"

我已将此文件放在所有可能的文件夹中:

.ebextensions
|-- 01_nginx.conf
|
|--nginx
   |--01_nginx.conf
   |--conf.d
      |--01_nginx.conf

当我检查日志时,第一条消息是

2020/07/31 18:23:59.603405 [INFO]完成执行配置集Infra-EmbeddedPostBuild。

然后

2020/07/31 18:23:59.603427 [INFO]执行指令:CleanEbExtensions

理论上,清除.ebextensions时,自定义命令应该已经执行了,但是没有执行(当我通过ssh连接到服务器时,未创建任何文件,以及尝试上传文件时,服务器也会响应与413)。

我也曾尝试修改/ etc / nginx /中的nginx.conf文件,但是每次更新代码时都会重置它。 所有的/ etc / nginx /目录似乎都已重置,因为我也尝试将“ 000_custom.conf”文件放入“ /etc/nginx/conf.d/”中,但没有结果。

编辑: 我想指出的是,如果我在服务器上的“ / etc / nginx /”中修改了nginx.conf并执行了“ sudo nginx -s reload”,那么它将一直工作到下一个代码构建。

1 个答案:

答案 0 :(得分:1)

您的nginx配置不起作用的可能原因是您使用的是基于 Amazon Linux 2 (AL2)的当前EB版本。但是,您的nginx配置文件适用于旧的AL1。

对于AL2,nginx设置应位于.platform中,而不是docs中所示的.ebextentions中。

因此,您可以尝试创建具有以下内容的文件.platform/nginx/conf.d/mynginx.conf

client_max_body_size 200M;