When deploying the django application I came across the following error after configuring the spaces:
<Error> <Code>SignatureDoesNotMatch</Code> <RequestId>tx0000000000000022786fe-0060de1164-817b1df-sfo3a</RequestId> <HostId>817b1df-sfo3a-sfo3-zg01</HostId> </Error>
Images are not loaded at application runtime.
My settings:
AWS_ACCESS_KEY_ID = '123456789'
AWS_SECRET_ACCESS_KEY = '123456789'
AWS_STORAGE_BUCKET_NAME = 'bucket-name'
AWS_S3_ENDPOINT_URL = 'https://name.sfo3.digitaloceanspaces.com'
AWS_S3_OBJECT_PARAMETERS = {
'CacheControl': 'max-age=86400',
}
AWS_S3_SIGNATURE_VERSION = 's3v4'
AWS_LOCATION = 'staticfiles-test'
AWS_DEFAULT_ACL = 'public-read'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'app/static'),
]
STATIC_URL = '{}/{}/'.format(AWS_S3_ENDPOINT_URL, AWS_LOCATION)
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
So far I have not been able to find a solution, I have carried out research and so far without a solution.
I would like help to solve this problem.
These answers are provided by our Community. If you find them useful, show some love by clicking the heart. If you run into issues leave a comment, or add your own answer to help others.
Hi there @thiagoemanuel,
I believe that you have to change:
AWS_S3_ENDPOINT_URL = 'https://name.sfo3.digitaloceanspaces.com'
To:
AWS_S3_ENDPOINT_URL = 'https://sfo3.digitaloceanspaces.com'
Let me know how it goes!
For future references, here is a tutorial on how to set that up:
https://www.digitalocean.com/community/tutorials/how-to-set-up-object-storage-with-django
Regards, Bobby