上传/部署 zip 文件时,不会创建 .platform 挂钩中的 AWS Elastic Beanstalk 自定义 nginx .conf 文件
Posted
技术标签:
【中文标题】上传/部署 zip 文件时,不会创建 .platform 挂钩中的 AWS Elastic Beanstalk 自定义 nginx .conf 文件【英文标题】:AWS Elastic Beanstalk custom nginx .conf file in the .platform hooks is not created when zip file is uploaded/ deployed 【发布时间】:2021-11-13 05:10:17 【问题描述】:我正在将 Node JS/Express JS 应用程序部署到 AWS Elastic Beanstalk 环境。我正在创建自定义 nginx 配置文件来更改设置。为此,我创建了以下文件。
project_root_directory/.platform/nginx/conf.d/elasticbeanstalk/mynginx.conf
server
client_max_body_size 512M;
然后像往常一样部署应用程序,我压缩我的项目并将压缩文件上传到 AWS 控制台。更新环境后,我检查了服务器上的文件,没有。
为什么文件不存在,我该如何修复它?
以下是详细内容:
图像是 Amazon Linux 2 AMI。
我在根文件夹中创建了一个 .ebextensions 文件夹,其中包含以下文件:
00-files.config
files:
"/etc/nginx/conf.d/mynginx.conf" :
mode: "000755"
owner: root
group: root
content: |
client_max_body_size 512M;
01-nodecommand.config
option_settings:
- namespace: aws:elasticbeanstalk:container:nodejs
option_name: NodeCommand
value: "npm start"
02-migrationcommand.config
option_settings:
- namespace: aws:elasticbeanstalk:container:nodejs
option_name: MigrationCommand
value: "npx sequelize-cli db:migrate"
然后我再次在根文件夹中创建了 .platform/nginx/conf.d/mynginx.config 文件,其中包含以下内容。
server
client_max_body_size 512M;
所以我有这样的项目结构。
然后我压缩项目。然后登录 AWS 控制台并转到 Beanstalk 控制台并在那里上传 zip 文件。
【问题讨论】:
【参考方案1】:假设您使用的是 Amazon Linux 2 EB 平台,正确的文件夹应该是:
project_root_directory/.platform/nginx/conf.d/mynginx.conf
不是
project_root_directory/.platform/nginx/conf.d/elasticbeanstalk/mynginx.conf
更新:
您的mynginx.conf
应该是:
client_max_body_size 512M;
【讨论】:
嗨,我也试过了。当我上传 zip 文件时,该文件不存在。 @WaiYanHein 那么也许您使用的是 Amazon Linux 1。在这种情况下,.platform 将无法正常工作。 不。我正在使用 Amazon Linux 2。 @WaiYanHein 您能否更新您的问题并提供更多详细信息,例如确切的 EB 平台版本或您制作和部署 zip 所采取的步骤?换句话说,如果我想复制这个问题,我应该怎么做呢? 嗨,非常感谢。现在一切正常。干杯。以上是关于上传/部署 zip 文件时,不会创建 .platform 挂钩中的 AWS Elastic Beanstalk 自定义 nginx .conf 文件的主要内容,如果未能解决你的问题,请参考以下文章
在 AWS ElasticBeanstalk 上部署 WordPress 应用程序 - 上传大小