问题标签 [django-storage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - Amazon S3 的访问被拒绝错误
我在使用 Amazon S3 时收到拒绝访问错误,但不知道原因。
我的设置如下:
STATIC_URL = 'http://s3.amazonaws.com/%s/' % AWS_STORAGE_BUCKET_NAME
什么会导致访问被拒绝错误?我已经验证我的密钥是正确的。
django - 从 S3 提供 Django 的静态和媒体文件
我有一个奇怪的问题,我不知道是什么原因造成的。这是我当前的配置(使用Heroku
):
问题是,静态文件工作正常,链接如下所示:https://s3.amazonaws.com/project-staging/img/homepage_left.png
.
第一个问题(管理员一半坏了):
管理员工作了一半。CSS 文件服务良好:https://project-staging.s3.amazonaws.com/admin/js/core.js?Signature=asdasdasd%3D&Expires=1352430664&AWSAccessKeyId=asdasdasA
但所有图像都损坏了:
https://project-staging.s3.amazonaws.com/admin?Signature=%2asdasdad%3D&Expires=1352430664&AWSAccessKeyId=asdasdaimg/icon_calendar.gif
我不知道为什么 Signature 和 AWSAccesskey 在那里 :(。如果我(手动)删除它们,URL 工作正常!
第二个问题(通过 ImageField/FileField 上传媒体):
我正在使用{{MEDIA_URL}}{{object.flyer}}
,它转换为/media/media/flyers/poster_1.png
,我如何指出它到 s3?它应该是这样的:https://project-staging.s3.amazonaws.com/media/flyers/poster_1.png
django - Heroku 的 Django collectstatic 每次都推送到 S3
我将 django-storages 用于 S3(和 S3BotoStorage)的静态文件。当我从本地机器收集静态时,行为与预期一致,仅将修改后的文件推送到 S3。这个过程需要 python-dateutils 1.5 来检查修改时间。
但是,在 Heroku 上执行相同操作会导致每个文件都被推送,尽管设置是相同的。然后我查看了 Heroku 本身文件的修改时间,看起来 os.stat(static_filename).st_mtime 与上次推送的时间相同。
这是预期的行为吗?即使 git 没有变化,heroku 是否会复制文件?
python - django-storages,如何覆盖回django的本地文件存储
我已经使用 django-storages 设置了 django 并将默认文件存储设置为 s3boto
DEFAULT_FILE_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
但是我想将一种类型的模型文件字段本地存储在“/ media”中,什么是恢复到 django 原始默认文件存储的最佳方法,我尝试实现 FileSystemStorage 但我收到一个 SuspiciousOperation 错误
我需要编写自己的自定义存储类吗?
django - django softlayer 对象存储,我应该使用什么后端或包?
我正在使用 django,我想使用 SoftLayer 对象存储来存储我的 mp3 文件。http://www.softlayer.com/cloudlayer/storage
我不知道我应该使用 django-storages ( django-storages.readthedocs.org ) 中的哪个后端。以及如何告诉 django 在选择后端后查看 softlayer.com。
如果有人可以建议另一个 django 包,我们将不胜感激。
boto - dajaxice collectstatic 创建一个临时文件
我在使用 Dajaxice 以及创建用于 ajax 的自定义 javascript 文件时遇到问题。当manage.py collectstatic
安装了 Dajaxice 运行时,它会创建一个自定义的 javascript 文件。这篇文章也提到了这个问题。在我的情况下运行:
给出:
在本地运行时。我遇到的问题是,当将它与 django-storages 配对并启动以从 Amazon S3 提供静态文件时,它会爆炸,因为该文件是引用绝对路径而不是相对路径创建的(我认为它的 boto 没有实现django-storages 不喜欢的东西)。错误如下所示:
(在这种情况下,我在 Heroku 上进行部署,这就是为什么我不能手动将创建的文件复制到静态位置并引用它)。有没有解决的办法?我可以让 Dajaxice 将生成的文件放在相对路径位置吗?或者我可以通过强制 django-storages/boto 接受绝对路径来解决它吗?或者,如果所有其他方法都失败了,是否有一种简单的方法可以预先生成文件,而不是在我收集静态时卸载我的所有 S3 依赖项,复制文件并强制 Dajax 停止查找生成的文件?
任何帮助表示赞赏。
amazon-web-services - 如何保存 JPG/PNG 文件并让它保留正确的 Content-Type
我通过以下方式将服务器中的图片文件保存在 S3 中的存储桶中:
该文件被写入,但在某个地方 MIME 上下文丢失,保存的图像将返回Content-Type: binary/octet-stream
,浏览器将尝试下载而不是在其 URL 被击中时显示。
有什么办法可以减轻这种情况吗?
python - Django 中关于文件存储处理的包罗万象的异常类是什么?
我需要捕获与 Django 的文件存储 API 相关的所有异常,可能是用于读取或写入等。这里的问题是该 API 中没有定义通用异常类。例如,当使用FileSystemStorage
(默认)时,抛出的异常是IOError
,但是如果我使用的是远程存储,比如 S3?我知道我可以添加一些通用的 Boto 异常,但我想要的是保持此代码通用并与我以后选择的任何存储后端分离。
这是解释这种情况的示例代码:
我应该在except
子句中检查哪些异常类?
django - 仅在生产 Django 中使用 S3
我将我的 base_settings.py 设置为DEBUG = False
,在我的设置结束时,我有以下代码:
在我的 local_settings.py 中,我设置了DEBUG = True
.
我的设置模块的init .py 文件:
出于某种原因,在本地工作时,尽管我没有设置 DEBUG,但它仍会尝试从 S3 中提取静态文件。我想到的原因是它首先读取基本文件并在实际导入 local_settings.py 之前测试 DEBUG。所以我的问题是:我该如何解决这个问题,所以 s3 文件只用于生产?
django - Django - 与 S3 配合良好的文件浏览器的替代品
在Django Packages上找到的Django Filer似乎是一个不错的选择,但它对存储后端的支持似乎不完整。
我想知道与 S3 很好地集成的 Django 文件浏览器的其他替代方案。