1

我使用git的部署EB(PHP),并在根文件夹中,我创建的文件夹.ebextensions并与内容AWS弹性魔豆.ebextensions' config_options不使用

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

文件options.config然而,在/var/log/eb-activity.log,我发现了document_root永远不会被设置

++ export PHP_DOCUMENT_ROOT= 
    ++ PHP_DOCUMENT_ROOT= 

在S3包我找到.ebextensions捆绑,所以我能做些什么来调试呢?

+0

您是否在关注http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_PHP.container.html?如果我的答案是正确的,那么该网页是错误的,因为我不知道config_options作为有效的设置 – NHol

回答

1

使用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

另外一个简单的事情,但是在源根部和options.config的.ebextensions夹在.ebextensions文件夹中? http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/ebextensions.html

+0

我试过你的第一个配置,它没有工作。我的配置正常运行,因为我在文件中有另一个“container_commands”,它的工作原理。您的第二个配置在部署期间包含错误 – Ryan

+0

这很奇怪,因为亚马逊建议使用config_options,例如http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_PHP.container.html – Ryan

+0

Node.js和Python使用option_settings:但是当您使用PHP获取错误时,PHP页面示例是config_options:那么它一定是不同的。希望有PHP经验的其他人能知道,对不起。 – NHol

0

这是一个老问题(链接),但因为它是在this link说:说

,我们担心,当我们的一些客户 的开始设置文档根报告问题环境 配置。其中许多环境莫名其妙地是“红色”,并且在某些情况下无法正确更新。在 进行了一些挖掘之后,我们发现虽然在配置更新期间配置设置为 被正确写入,但在启动新实例时,它们不是 正确写入(通过自动缩放,AWS Toolkit for Eclipse或其他)。

我认为你的问题不是配置,但可能是你正在使用的AMI,它是哪种AMI?更新后的AMI的版本是:

亚马逊的Linux 2012.03

能否请您确认您的AMI版本?也许你正在使用一个旧的定制?

编辑

而且在this link,它说没有在AWS EB PHP主机文档根配置:

要访问配置选项为您的PHP环境

1)打开Elastic Beanstalk控制台。

2)导航到您的环境的管理控制台。3)选择配置

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

PHP设置

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

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