Обслуживание статики на AWS - Django - Python

У меня все статические изображения обслуживаются локально в моем проекте Django website. Мне нужно, чтобы они были размещены на AWS, чтобы мой DEBUG = False работал. Я следовал многим руководствам о том, как это сделать, но мне не повезло. Я разместил свой код ниже в качестве последней попытки, надеясь, что это просто что-то, что я упустил. Мой AWS bucket в настоящее время является общедоступным, потому что я видел, как это делают другие. Любая помощь будет высоко оценена. Спасибо!

setings.py

AWS_ACCESS_KEY_ID = 'hidden for privacy'
AWS_SECRET_ACCESS_KEY = 'hidden for privacy'
AWS_STORAGE_BUCKET_NAME = 'hidden for privacy'

AWS_S3_FILE_OVERWRITE = False
AWS_DEFAULT_ACL = None
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'


# Internationalization
# https://docs.djangoproject.com/en/3.1/topics/i18n/

LANGUAGE_CODE = 'en-us'

TIME_ZONE = 'America/Caracas'

USE_I18N = True

USE_L10N = True

USE_TZ = True


# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.2/howto/static-files/

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

#MEDIA_URL = '/images/'
#MEDIA_ROOT = os.path.join(BASE_DIR, 'static/images/')

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, '..','www','media')

HTML

{%  load static %}
<!DOCTYPE html>
<html lang="en">

<head>
  <link rel="shortcut icon" type="image/x-icon" href="{% static 'tab_icon.ico' %}">
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="{% static "css/side.css" %}">
  <link rel="stylesheet" href="{% static "css/style.css" %}">
  <link rel="stylesheet" href="{% static "css/materialize.css" %}">
  <link rel="stylesheet" href="{% static "css/front_page.css" %}">
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
  <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet">
</head>

<body>
<nav class="blue hide-on-med-and-down banner">
  <div class="nav-wrapper">
    <a href="/front_page" class="header__name"><img src="{% static 'logo_name.png' %}"></a>
  </div>
</nav>
</body>

Структура моего ведра - bucketname/ images/ все мои статические файлы.

Мои статические файлы работают нормально, когда обслуживаются локально, но когда я снимаю их, чтобы AWS взяла их на себя, они ничего не показывают на экране, а "inspect" показывает маленький url на то место, где они должны быть локально, вместо длинного пользователя из s3 и AWS. Я знаком с AWS. Спасибо за любую помощь!

Вернуться на верх