gpt4 book ai didi

python - Elastic beanstalk Django 管理 css 未加载

转载 作者:行者123 更新时间:2023-12-01 02:27:54 31 4
gpt4 key购买 nike

使用Django 1.11.6、python 3.6.2

简短摘要:静态文件在服务器上正确收集,但仅提供一个应用程序的子目录,管理员的静态文件返回为 404。

运行本地开发服务器一切都按预期进行。部署到我的 EB 实例后,管理应用程序不会加载任何静态文件。如果我运行 eb ssh 并在服务器上环顾四周,我可以看到收集的静态文件夹以及所有不同应用程序的子文件夹。文件都在我期望的地方。 django 前端生成的链接以合理的方式映射到这些路径,只是 static/admin 中的任何内容都会返回 404,而 static/entities 中的文件工作正常。

前端测试路径:

/static/admin/css/base.css (404)
/static/entities/style.css (works)

在服务器上,所有收集的静态文件看起来都很好:

/opt/python/current/app/static/admin/css
/opt/python/current/app/static/entities

不知道为什么一个子目录服务器正常,但其他子目录返回 404。

来 self 的 django.config

option_settings:
"aws:elasticbeanstalk:application:environment":
DJANGO_SETTINGS_MODULE: "spf.settings"
"PYTHONPATH": "/opt/python/current/app:$PYTHONPATH"
"ALLOWED_HOSTS": ".elasticbeanstalk.com"
"aws:elasticbeanstalk:container:python":
WSGIPath: spf/wsgi.py
NumProcesses: 3
NumThreads: 20
"aws:elasticbeanstalk:container:python:staticfiles":
"/static/": "static/"
...

03_collectstatic:
command: "source /opt/python/run/venv/bin/activate && python manage.py collectstatic --noinput"

在本地运行collectstatic命令也会为每个应用程序生成正确的静态文件夹,其中包含相同的子目录。

最佳答案

在这里羞怯地 self 回答:在我的 eb 实例的 AWS 配置中,我设置了一些静态文件别名以直接从我的子应用程序之一提供服务。 (查看配置->软件配置->静态文件)。这些别名会覆盖您在 django 应用程序中可能拥有的任何 wsgi 设置。 :)

关于python - Elastic beanstalk Django 管理 css 未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47178802/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com