Django + Heroku + AWS S3で画像投稿アプリを作成しています。
ローカルではS3から読み込めているのですが、Herokuでは画像が読み込めていません。
Herokuだと画像が表示されず、
https://hoge.herokuapp.com/images/hoge.jpg
と表示されます。
ローカルではS3から表示されているのに、HerokuだとMEDIA_URLのimagesから表示されています。何かコードの順番が問題でしょうか?
コード
- settings.py
### 省略 ### # 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, 'staticfiles') #image settings MEDIA_ROOT = os.path.join(BASE_DIR, 'images') MEDIA_URL = '/images/' #local settings try: from .local_settings import * except ImportError: pass if not DEBUG: SECRET_KEY = os.environ['SECRET_KEY'] AWS_ACCESS_KEY_ID = os.environ['AWS_ACCESS_KEY_ID'] AWS_SECRET_ACCESS_KEY = os.environ['AWS_SECRET_ACCESS_KEY'] AWS_STORAGE_BUCKET_NAME = os.environ['AWS_STORAGE_BUCKET_NAME'] DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' AWS_S3_FILE_OVERWRITE = False AWS_DEFAULT_ACL = None import django_heroku django_heroku.settings(locals()) db_from_env = dj_database_url.config(conn_max_age=600, ssl_require=True) DATABASES['default'].update(db_from_env)
- local_settings.py
### 省略 ### #True only in local DEBUG = True #AWS S3 settings AWS_ACCESS_KEY_ID = 'hoge' AWS_SECRET_ACCESS_KEY = 'hoge' AWS_STORAGE_BUCKET_NAME = 'hoge' DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage' AWS_S3_FILE_OVERWRITE = False AWS_DEFAULT_ACL = None
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2019/07/05 03:42