AWS Elastic Beanstalk .ebextensions' config_options未被使用

时间:2016-11-21 09:35:47

标签: amazon-web-services elastic-beanstalk amazon-elastic-beanstalk

我使用.git来部署eb(PHP),在根文件夹中,我创建了文件夹.ebextensions和带有内容的文件options.config

config_options:
  aws:elasticbeanstalk:container:php:phpini:
    document_root: /laravel/public

然而,在/var/log/eb-activity.log中,我发现永远不会设置document_root

 ++ export PHP_DOCUMENT_ROOT=
  ++ PHP_DOCUMENT_ROOT=

在S3软件包中,我发现.ebextensions已捆绑在一起,那么我该如何调试呢?

2 个答案:

答案 0 :(得分:2)

文档声明使用option_settings而不是config_options(node.js,python和ruby示例使用它,但PHP特定的示例是config_options)

option_settings:
- namespace: 'aws:elasticbeanstalk:container:php:phpini':
  option_name: document_root
  value: /laravel/public

或使用时简写YAML

option_settings:
  aws:elasticbeanstalk:container:php:phpini:
    document_root: /laravel/public

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions-optionsettings.html

同样简单但是源根目录中的.ebextensions文件夹和.ebextensions文件夹中的options.config? http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html

答案 1 :(得分:0)

这是一个老问题(链接),但正如this link中所述:

  

话虽如此,我们关注的是我们的一些客户   开始报告设置文档根环境的问题   组态。其中许多环境令人费解,并且正在进行中   红色"并且在某些条件下无法正确更新。后   一些挖掘,我们发现虽然配置设置是   在配置更新期间正确编写,他们不是   在启动新实例时正确写入(通过Auto   扩展,AWS Toolkit for Eclipse或其他方式。)

我认为您的问题不是配置,但可能是您正在使用的AMI,AMI是什么?更新的AMI版本是:

  

Amazon Linux 2012.03

您可以验证您的AMI版本吗?也许你正在使用旧的自定义产品?

修改

同样在this link中,它表示AWS EB PHP控制台中有文档根配置:

  

访问PHP环境的配置选项

     

1)打开Elastic Beanstalk控制台。

     

2)导航到您所在环境的管理控制台。

     

3)选择配置

     

4)在软件配置部分中,选择编辑。

     

PHP设置

     
      
  • 文档根目录 - 包含您网站默认页面的文件夹。如果   您的欢迎页面不在源包的根目录下,请指定   包含它的文件夹相对于根路径。例如,   / public如果欢迎页面位于名为public的文件夹中。
  •   

也许你可以从仪表板配置它?