Загрузка изображения приводит к ошибке сервера (500) Приложение Django развернуто на railway.app

Я развернул приложение django на railway.app. В разработке я могу загружать изображения, но когда я перехожу к развернутому приложению и нажимаю на загрузку, это приводит к ошибке сервера (500).

ниже приведен код моего файла settings.py

STATIC_URL = 'static/'
# STATIC_ROOT = BASE_DIR / 'staticfiles'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')] 
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

if 'XXX' in os.environ:

    # Bucket config
    AWS_STORAGE_BUCKET_NAME = 'xxx'
    AWS_S3_REGION_NAME = 'xxx'
    AWS_ACCESS_KEY_ID = os.environ.get('AWS_ACCESS_KEY_ID')
    AWS_SECRET_ACCESS_KEY = os.environ.get('AWS_SECRET_ACCESS_KEY')
    AWS_S3_CUSTOM_DOMAIN = f'{AWS_STORAGE_BUCKET_NAME}.s3.amazonaws.com'

    # Static and media files
    STATICFILES_STORAGE = 'custom_storages.StaticStorage'
    STATICFILES_LOCATION = 'static'
    DEFAULT_FILE_STORAGE = 'custom_storages.MediaStorage'
    MEDIAFILES_LOCATION = 'media'

    # Override static and media URLs in production
    STATIC_URL = f'https://{AWS_S3_CUSTOM_DOMAIN}/{STATICFILES_LOCATION}/'
    MEDIA_URL = f'https://{AWS_S3_CUSTOM_DOMAIN}/{MEDIAFILES_LOCATION}/'

html код

 <div>
      <img src="{{user_profile.profile_img.url}}" alt="Profile Image">   
 </div>
 
      <a href="{% url 'profile-image' user_profile.user user_profile.profile_uuid %}"</a>

Я решил эту проблему. Я изменил debug на true в production, что привело меня к точной ошибке, которая на самом деле была в логике представления. Я получал абсолютный путь к изображению, что приводило к этой ошибке, поэтому я изменил эту логику, чтобы получить относительный путь, что решило эту проблему.

Вернуться на верх