使用Django admin上传媒体文件至阿里云OSS

设置本地媒体文件,例:

MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')

安装django-aliyun-oss2-storage

pip3 install django-aliyun-oss2-storage

settings.py 添加阿里云OSS配置

# 使用OSS存储文件
DEFAULT_FILE_STORAGE = 'aliyun_oss2_storage.backends.AliyunMediaStorage'

# 配置OSS信息
ACCESS_KEY_ID = "xxx"
ACCESS_KEY_SECRET = "xxx"
PREFIX_URL = 'https://'  
END_POINT = "oss-cn-shanghai.aliyuncs.com"  # OSS存储节点,基本上只要改城市
BUCKET_NAME = "xxx"
BUCKET_ACL_TYPE = "public-read"  # private, public-read, public-read-write

# mediafile将自动上传
DEFAULT_FILE_STORAGE = 'aliyun_oss2_storage.backends.AliyunMediaStorage'

# 设置上传的静态文件,需要上传静态文件的记得添加此项
STATICFILES_STORAGE = 'aliyun_oss2_storage.backends.AliyunStaticStorage'

"""
PREFIX_URL配置一定要添加,否则可能会出现{'status': 403, 'x-oss-request-id': '', 'details': {}}的错误
"""

大功告成,可以在admin后台添加媒体文件到阿里云OSS上了,路径为存储库->文件管理->你设置的媒体文件夹名称下。

上一篇:Ubuntu18.04中安装virtualenv和virtualenvwrapper

下一篇:最新deepin-wine下微信的安装方法,非常简单 Ubuntu可用