Django存储或头像在我的网址上设置https,所以我得到证书错误

时间:2013-06-28 14:09:56

标签: django amazon-s3 django-storage

我已经使用django-storages和django-avatar设置了我的服务器。当我去查看我的网站时,我的css或图像都没有加载。当我检查URL时,我发现它是一个https,这导致证书错误。如果我删除s使其成为普通的http然后它工作正常。我搞砸了什么设置引起了这个问题?

Django 1.4.5
django-storages
django-avatar


import os
PROJECT_ROOT = os.path.dirname(__file__) + '/'

MEDIA_ROOT = PROJECT_ROOT + 'media/'
MEDIA_URL = 'http://static.XXXX.com.s3.amazonaws.com/'
STATIC_ROOT = PROJECT_ROOT + 'static/'
STATIC_URL = 'http://static.XXXX.com.s3.amazonaws.com/'
STATIC_DOC_ROOT = PROJECT_ROOT + 'static/'

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

AWS_ACCESS_KEY_ID = 'XXXX'
AWS_SECRET_ACCESS_KEY = 'XXXX'
AWS_STORAGE_BUCKET_NAME = 'static.XXXX.com'
AWS_QUERYSTRING_AUTH = False
AWS_S3_SECURE_URLS = False

#AVATAR
AVATAR_DEFAULT_SIZE = 80
AVATAR_THUMB_FORMAT = "PNG"
AVATAR_THUMB_QUALITY = 90
AVATAR_HASH_FILENAMES = False
AVATAR_HASH_USERDIRNAMES = False
AVATAR_GRAVATAR_BACKUP = False
AVATAR_DEFAULT_URL = MEDIA_URL + 'avatars/default.png'

之前我曾使用过存储(在同一个共享服务器上),没有任何问题,所以它让我相信它是头像是问题。任何指针都将非常感激。

编辑: 在前端使用{{MEDIA_URL}}的链接文件很好 由于https,使用头像上传的图片未显示 由于https

,管理员样式和图片未显示

如果它有助于未显示的图像位于需要用户登录的部分中?

......我现在正在查看其他图片

编辑2:

其他图片(log& bg图片)没问题,但是是通过s3上的css文件加载的

1 个答案:

答案 0 :(得分:0)

我已经解决了这个问题。我这样做的方法是替换:

DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'

使用:

DEFAULT_FILE_STORAGE = 'storages.backends.s3.S3Storage'
from S3 import CallingFormat
AWS_CALLING_FORMAT = CallingFormat.SUBDOMAIN