# Django - Move Static file to S3
###### tags: `AWS`, `S3`, `Django`
## :memo: Where do I start?
### Step 1: Create a user who has perssion of S3 in IAM
* Create a User and chose accescc type to programmatic access

* Create a group which has AmazonS3FullAccess

* Click Create User bottom and and Download CSV

---
### Step 2: Create a S3
* Cancel Block all public access

* Set Public access, Everyone can read

---
### Step 3: Install Package
`pip install django-storages`
---
### Step 4: Edit Django Settings by CSV you downloaded before
```
AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID', '')
AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY', '')
AWS_STORAGE_BUCKET_NAME = os.environ.get('AWS_STORAGE_BUCKET_NAME', '')
AWS_S3_CUSTOM_DOMAIN = f'{AWS_STORAGE_BUCKET_NAME}.s3.amazonaws.com'
AWS_S3_OBJECT_PARAMETERS = {
'CacheControl': 'max-age=86400',
}
AWS_LOCATION = 'static'
STATIC_URL = 'https://%s/%s/' % (AWS_S3_CUSTOM_DOMAIN, AWS_LOCATION)
STATICFILES_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto3.S3Boto3Storage'
AWS_DEFAULT_ACL = 'public-read'
```
---
### Step 5: Collect Static Files
`python manage.py collectstatic`
### Step 6: Check if it works
