在弹性豆茎中设置静态文件

Posted

技术标签:

【中文标题】在弹性豆茎中设置静态文件【英文标题】:Setting static file in elastic beanstalk 【发布时间】:2020-08-31 19:09:32 【问题描述】:

当使用弹性 beanstalk 托管时,尝试让 django 在正确的目录中查找静态文件。

配置文件:

option_settings:    
 "aws:elasticbeanstalk:container:python:staticfiles":
    "/static/": "static"

收到错误信息:

错误选项规范无效(命名空间:'aws:elasticbeanstalk:container:python:staticfiles',选项名称:'/static/'):未知配置设置。

尝试使用documentation 中的以下代码作为测试。

option_settings:
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: production.settings
  aws:elasticbeanstalk:container:python:staticfiles:
    /html: statichtml
    /images: staticimages

得到相同的“未知配置设置”错误。

【问题讨论】:

我都试过了。但我会编辑以消除混乱。谢谢 为了澄清,我要求检查时不带引号和斜线。然后我在发布时删除了评论,它可能是 AMI 版本问题。 你最后决定做什么?您是否使用支持它的 Amazon Linux AMI? 没错,暂时用linux的,以后会更新的。 【参考方案1】:

您似乎使用的是 Amazon Linux 2?如果是,则不支持aws:elasticbeanstalk:container:python:staticfiles

来自docs:

使用 aws:elasticbeanstalk:container:python:staticfiles 命名空间是 only 在 Amazon Linux AMI Python 平台版本上受支持

【讨论】:

@Lev 没问题。【参考方案2】:

Amazon Linux 2 的答案是改变:

aws:elasticbeanstalk:container:python:staticfiles:
    /html: statichtml
    /images: staticimages

aws:elasticbeanstalk:environment:proxy:staticfiles:
    /html: statichtml
    /images: staticimages

【讨论】:

以上是关于在弹性豆茎中设置静态文件的主要内容,如果未能解决你的问题,请参考以下文章

如何在弹性豆茎中设置/更新 PATH 变量?

云形成的弹性豆茎上的 SSL 证书

如何在linux系统中设置静态ip地址

将弹性豆茎(wordpress 博客)映射到子域

AWS 弹性豆茎上的 CORS

如何使用命令行在窗口 10 中设置 Qt5 静态