Django + AWS s3 для носителей с Nginx - PullRequest
0 голосов
/ 05 августа 2020

В localhost моя конфигурация AWS работает, и все медиа-файлы хранятся в моем ведре S3.

settings.py

AWS_ACCESS_KEY_ID = 'some_key'  
AWS_SECRET_ACCESS_KEY = 'F'  
AWS_STORAGE_BUCKET_NAME = 'my_bucket'  
AWS_S3_SIGNATURE_VERSION = 's3v4'  

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

Это работает и sr c изображения выглядит так: enter image description here

I deployed it on my Nginx server

And now the src path looks like this:
enter image description here

So I need the AWS path, but it references to local media (and the image isn't shown) enter image description here

Nginx configuration:

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/html;

        index index.html index.htm index.nginx-debian.html;

        server_name _;

        /* HERE THE PATH TO MY AWS BUCKET
        ===============================*/
        location /media  {
                proxy_pass https://diasmart-media-static.s3.amazonaws.com/;
        }
        /* ============END============ */

        location /static {
                alias /root/DiaStore/src/assets;
        }

        location / {
                proxy_pass http://127.0.0.1:8001;
                proxy_set_header X-Forwarded-Host $server_name;
                proxy_set_header X-Real-IP $remote_addr;
                add_header P3P 'CP="ALL DSP COR PSAa PSDa OUR NOR ONL UNI COM NAV"';
                add_header Access-Control-Allow-Origin *;
        }
}

Помогите, пожалуйста, как я могу решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...