Назад | Перейти на главную страницу

Ресурсы администратора Django недоступны на эластичном beanstalk

Я создал базовую среду Python Django на AWS. Мой проект создан с помощью django-admin startproject michaelmalura. Я добавил приложение с django-admin startapp blog.

После того, как я опубликую свой проект с eb deploy все на фронтенде работает нормально. Но бэкенд не показывает никаких стилей.

settings.py

...

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'blog'
]

...

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

django.config

container_commands:
  01_migrate:
    command: "python manage.py migrate --noinput"
    leader_only: true
  02_collectstatic:
    command: "python manage.py collectstatic --noinput"
option_settings:
  "aws:elasticbeanstalk:container:python:environment":
    DJANGO_SETTINGS_MODULE: "michaelmalura.settings"
  aws:elasticbeanstalk:container:python:
    WSGIPath: "michaelmalura/wsgi.py"
  "aws:elasticbeanstalk:container:python:staticfiles":
    "/static/": "static/"

Ошибка администратора

Failed to load resource: the server responded with a status of 404 (Not Found) http://michaelmalura.eu-central-1.elasticbeanstalk.com/static/admin/css/base.css

Наконец-то я нашел способ исправить это. Я удалил .. из STATIC_ROOT

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