当推到弹性豆茎时,烧瓶的静态资产返回404错误

时间:2015-11-30 01:14:14

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

我正在运行一个烧瓶应用程序,当我在本地运行它时工作正常。当我将它部署在弹性beanstalk上时,所有静态资产(css,js,img)都会返回404错误。

我在模板文件中使用jinja url_for来调用静态资源(例如下面的代码)。

<link rel=stylesheet type=text/css href="{{ url_for('static', filename='css/profile.css') }}">

我的目录结构如下所示:

/myapplication
    /config
    /webapp
        /static
            /css
                style.css
                profile.css
            /js
                profile.js
        /templates
            layout.html
            profile.html
            login.html
        views.py
        __init_.py
    application.py

知道为什么这不会加载弹性beanstalk?

1 个答案:

答案 0 :(得分:3)

一个可能的问题:Elastic Beanstalk会将您的本地权限与已部署的应用程序相匹配。您的文件可能是所有者/组可读/写,适用于本地测试,但外部用户无法在Web服务器上查看它们。

我遇到了同样的问题,但在我对所有静态文件运行chmod 664之后,现在可以在我部署的应用中看到它们。