My S3 Dir My Bucket Name > static > frontend > images > [hash-name].png
My Bucket Name > static > frontend > main.js
Мой nginx project.conf
server {
listen 80;
server_name *.compute.amazonaws.com *.***.com;
charset utf-8;
client_max_body_size 128M;
# Buffer
client_body_buffer_size 4096K;
if ($http_x_forwarded_proto = 'http'){
return 301 https://$host$request_uri;
}
location / {
uwsgi_pass unix:///tmp/****.sock;
include uwsgi_params;
}
location /static/ {
alias https://****.s3.ap-southeast-1.amazonaws.com/static/;
}
location /media/ {
alias https://****.s3-ap-southeast-1.amazonaws.com/media/;
}
}
settings.py
#.config_secret/settings_common.json = AWS Key, info
CONFIG_SECRET_DIR = os.path.join(ROOT_DIR, '.config_secret')
CONFIG_SETTINGS_COMMON_FILE = os.path.join(CONFIG_SECRET_DIR, 'settings_common.json')
STATIC_DIR = os.path.join(BASE_DIR, 'static')
STATICFILES_DIRS = [
STATIC_DIR,
]
# STATIC_ROOT = os.path.join(ROOT_DIR, '.static_root')
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
# S3 Storage
DEFAULT_FILE_STORAGE = '****.storages.MediaStorage'
STATICFILES_STORAGE = '****.storages.StaticStorage'
MEDIAFILES_LOCATION = 'media'
STATICFILES_LOCATION = 'static'
# AWS Access
config_secret = json.loads(open(CONFIG_SETTINGS_COMMON_FILE).read())
AWS_ACCESS_KEY_ID = config_secret['aws']['access_key_id']
AWS_SECRET_ACCESS_KEY = config_secret['aws']['secret_access_key']
AWS_STORAGE_BUCKET_NAME = config_secret['aws']['s3_bucket_name']
main. js image.png Структура Проект выглядит следующим образом. main. js обычно принимается s3 при подтверждении инструментом разработчика. Однако файлы в папке с изображениями пытаются получить по общему адресу, а не по s3, что приводит к ошибке 404. Что мне делать? Спасибо!