我已经在amazon elastic beanstalk中部署了Django应用程序。但是,django管理中的css不起作用。我知道这是一个集体问题。这就是我的settings.py的样子:

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

我的ebconfig.config文件中有这一行:
container_commands:
  01_collectstatic:
    command: "python manage.py collectstatic --noinput"

然而,这就是我在amazon上部署它时的样子:
python - Amazon Elastic Beanstalk中的Django Collectstatic无法正常工作-LMLPHP
我试过在amazon控制台中查看日志文件。我发现一行字是:
EmbeddedPostBuild/postbuild_0_dcape/Command 01_collectstatic] : Starting activity...
.....
  0 static files copied to '/opt/python/bundle/33/app/static', 102 unmodified.

我需要做什么来确保它有效?

最佳答案

我有同样的问题很久了。似乎必须告诉beanstalk静态文件夹在生产服务器上的位置。
在ebconfig.config中指定commands/container_commands,添加一个选项设置,以便beanstalk可以知道您的静态_根在live服务器上等同于什么。
我就是这样做的:
设置.py

STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static/')

配置文件
option_settings:
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: MDGOnline.settings
  "aws:elasticbeanstalk:container:python:staticfiles":
    "static/": "www/static/"

查看这个精彩的AWS Elastic Beanstalk Doc了解更多详细信息

关于python - Amazon Elastic Beanstalk中的Django Collectstatic无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44402934/

10-12 17:31