我爲我的靜態和媒體文件存儲使用django-s3-folder-storage。我遵循了文檔中提到的所有說明,但仍然無法提供我的靜態文件。我能夠爲我的用戶上傳的文件提供服務,但即使在運行collectstatic命令(將文件複製到存儲桶中)後,靜態文件也不會顯示在網站上。我沒有在我的域中創建任何CNAME記錄(不確定這是否因爲我能夠看到用戶上傳的圖像而有所差異)。亞馬遜S3在生產中的django
我的設置文件:
DEFAULT_FILE_STORAGE = 's3_folder_storage.s3.DefaultStorage'
DEFAULT_S3_PATH = "media"
STATICFILES_STORAGE = 's3_folder_storage.s3.StaticStorage'
STATIC_S3_PATH = "static"
AWS_ACCESS_KEY_ID = # omitted
AWS_SECRET_ACCESS_KEY = # omitted
AWS_STORAGE_BUCKET_NAME = # omitted
MEDIA_ROOT = '/%s/' % DEFAULT_S3_PATH
MEDIA_URL = '//s3.amazonaws.com/%s/media/' % AWS_STORAGE_BUCKET_NAME
STATIC_ROOT = "/%s/" % STATIC_S3_PATH
STATIC_URL = '//s3.amazonaws.com/%s/static/' % AWS_STORAGE_BUCKET_NAME
ADMIN_MEDIA_PREFIX = STATIC_URL + 'admin/'
STATICFILES_DIRS = (
root('static'),
)
我的項目目錄:
website_name
static
website_name
settings.py
我正在使用s3fox,由於某種原因,我無法檢查文件是否在collectstatic之後進入存儲桶。我在這裏發佈了另一個關於這方面的問題。 (http://stackoverflow.com/questions/15747933/amazon-s3-problems-with-s3fox)。我無法通過他們的直接網址訪問他們?我沒有設置任何CNAME記錄指向s3.amazon.com?我是否需要設置才能訪問靜態文件? – Dev
嘗試通過亞馬遜的Web界面登錄到S3並檢查存儲桶的內容。另外,您可以將Django版本,MEDIA_URL和STATIC_URL設置添加到問題中嗎? (如果您還沒有將您的_URL設置更改爲新的域名,則不會,您的CNAME也不是問題。) – toxotes
嗨,我已經使用我的設置編輯了我的問題。而且,當我使用亞馬遜用戶界面登錄時,我也能夠看到存儲桶,並且我也可以看到我的所有靜態文件。 – Dev