问题标签 [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.

0 投票
1 回答
1597 浏览

python - SuspiciousOperation:尝试访问路径 default_storage django

我正在尝试将 a 保存到我的PDF文件夹中,当我尝试保存时,我收到此错误:projectfolderread, writePDF

SuspiciousOperation:试图访问 /opt/django_apps/inscripcion/solicitudes/filename

这是我的简单代码:

我正在使用python2.7withmod_pythondjango1.3onRedHat

0 投票
0 回答
172 浏览

django - Django Avatars 停止从 S3 提供服务

有一个 django 项目设置了以下配置,用于显示托管到 AWS S3 的用户头像在部署的第一周工作,那么我一定是无意中更改了一些项目设置或模块(或 S3 上的某些更改),因为现在头像请求正在返回 404(未找到)。

这是最初工作的完整项目设置:

网址.py

这一切都没有改变,查看最近的提交我看不到我所做的任何改变以前工作路径的事情。是rel('media')不好的做法AVATAR_STORAGE_DIR(但为什么它最初会起作用)?

0 投票
2 回答
764 浏览

django - Django 表单向导:删除中间步骤存储的临时文件

我正在为我的应用程序使用 django(1.4) formwizard。在第 1 步中,我正在上传 2 个文件。这些文件在第二步中使用。一切正常,但这--->“当我完成所有步骤或在第 1 步后停止时,我仍然有临时文件存储在 MEDIA 目录中”

如何确保在任何情况下都删除这些文件?

0 投票
1 回答
1008 浏览

python - Django Admin、Amazon S3、Heroku -- 缺少 icon_calendar

好的,我一直在学习 Django,但我是该框架的初学者。我是一个粉丝。我在 heroku 上运行了一个构建,使用 Django-storages 从 Amazon S3 提供静态文件。启动和运行非常容易,没有任何困难。

但是,我错过了日历图标。检查源代码显示 admin 和 img 之间没有斜杠。

例子:

https://s3.amazonaws.com/heroku-sdbhvaehv/adminimg/icon_clock.gif

它显然是此处列出的 Django-storages 中的一个错误:

http://code.larlet.fr/django-storages/issue/121/s3boto-admin-prefix-issue-with-django-14

而且我已经实施了评论中列出的各种修复,但没有运气。

我在 SO 和 Google Groups 上找到了两个帖子,但没有解决方案。

使用 Django 和 s3boto,一些管理图像(icon_clock.gif 和 icon_calendar.gif)不显示

所以——我正在寻找有关如何修复此图标的任何解决方案。我不在乎是否必须在每次推送后修改某些内容,或者做任何事情 - 但我不能缺少日历图标。

有什么帮助吗?

0 投票
2 回答
1627 浏览

django - 使用 S3BotoStorage 上传到 S3 的文件最终会包含无效转义的内容类型元数据

FACEPALM 更新:原来我已经忘记/忽略了这样一个事实,即我使用来自https://github.com/gtaylor/django-athumb的旧版 S3BotoStorage作为我的默认存储(即使我安装了 django-storages)。当前版本的 django-storages 没有遇到这个问题。问题是内容类型标头在命中 boto 时是 unicode,并且 botourllib.quoteplus在将其发送到 AWS 之前使用 unicode 转义。这并不是 Boto 的错,因为每个 HTTP 都必须以某种方式将标头转换为非 unicode 字符串。如需更深入的分析,请参阅https://github.com/boto/boto/issues/1669

原始问题

我正在使用django_storage 的 S3BotoStorage和 FileField 将文件上传到 Amazon S3。这是我的领域:

在设置中:

就上传/下载而言,一切正常。

但是,这些文件以不正确的内容类型存储在我的存储桶中。当我在 AWS S3 控制台中查看文件的元数据时,文件的 Content-Type 显示为“application%2Fpdf”,而不是应该的“application/pdf”。

转义内容类型

如果你说它不应该重要,它确实重要。谷歌浏览器的内置 pdf 阅读器会挂在内容类型无效的 pdf 上,一个客户引起了我的注意。

这是通过 django-storages/boto 上传的文件示例。如果您使用的是 chrome 的内置 pdf 阅读器,我认为它会挂起,就像我和报告此问题的客户一样。如果您使用的是非 chrome 浏览器或 adobe 插件,或者将文件下载到磁盘,您可能会没事。

如果我通过 AWS 控制台手动将内容类型元数据更改为“应用程序/pdf”(它提供的标准选择之一),那就没问题了。

我认为这是一个内部错误,boto 构造 AWS 策略文档以上传文件的方式,因为我没有在此处的标准用法之外做任何事情。但是,我已经逐步完成了 boto 代码,但找不到它实际上在哪里进行转义。

有人可以建议解决方法,或者指导我使用 boto 中的违规代码,以便我可以修补它并提交拉取请求吗?

boto==2.9.5 django-storages==1.1.8

0 投票
2 回答
590 浏览

django - 尽管有本地设置,但 Django 本地版本使用远程静态文件

我已经成功地将我的 Django 应用程序部署到 AWS Elastic Beanstalk(使用 eb)。我已按照此处列出的步骤http://www.youtube.com/watch?v=YJoOnKiSYws和此处http://grigory.ca/2012/09/getting-started-with-django-on-aws-elastic -beanstalk/并且正在使用 django-storages (boto) 框架来协助对 S3 进行静态文件管理。

我的 SETTINGS.PY 中有以下设置:

我的 LOCAL_SETTINGS.PY 有以下内容:

在我的模板中,我使用:

问题是,当我在本地运行应用程序时,它会引用我在 S3 中的静态文件,而不是在我的本地目录中。我需要更改哪些设置,以便在本地运行应用程序时使用本地静态文件,而在 AWS 上运行时使用 S3 文件?

0 投票
1 回答
1471 浏览

python - 如何将 django-storages 用于媒体和静态文件?

我正在尝试使用http://django-storages.readthedocs.org/en/latest/backends/amazon-S3.html来提供静态文件和上传的媒体但我不确定这是否可能。有没有我遗漏的记录方式?另外,我会假设(希望)您可以为每个存储桶配置一个单独的存储桶,但我找不到任何相关信息。

0 投票
3 回答
269 浏览

django - AWS 与以色列时间不同步 - 导致安全错误

连接 AWS 服务时,出于安全原因,连接时间最长应为 15 分钟。

今年在以色列,冬季时钟更改推迟了大约 2 个月。

但是亚马逊似乎不知道,所以如果正确的以色列时间是下午 14:00,那么对于亚马逊来说是下午 13:00。

这种情况会导致对服务的每个请求都失败(尤其是 S3)


  1. 选项 1 是亚马逊修复它,但可能需要时间。

  2. 选项 2 是手动更改发出请求的服务器上的时间。

但是,就我而言,这是不可能的,因为服务器是虚拟机,我没有更改时间的权限。

还有其他方法可以解决这个问题吗?连接亚马逊服务时以某种方式更改服务器上的时间?

我正在使用 django 和 django-storages (boto) 来连接 S3

0 投票
2 回答
1491 浏览

django - 自定义 django-storage s3 url?

我正在使用 django-storages 让用户将图像文件上传到我的 S3,并且我有一个与 s3 中的存储桶一起使用的云端分发。

我可以将文件上传到 s3,但我无法将图像文件的 url 更改为使用 cloudfront 分发 url。

url 始终设置为 s3 存储桶 url。

有没有办法自定义网址?

谢谢

0 投票
1 回答
762 浏览

django - Heroku + S3 + Django:静态文件未缓存

目前在 Heroku 上部署了一个项目,其中包含从 S3 加载的静态文件。我正在使用 boto/django-storage 来管理我的 S3 内容,但是如果我调用相同的视图或重复加载相同的页面,所有图像/静态内容都会加载两次并且不会被缓存。

我已经放置 AWS_HEADERS = { 'Cache-Control': 'max-age=2592000', }

在我的settings.py,但原因似乎相同的确切图像(刷新+加载两次)在其 URL 中具有不同的签名?我尝试了多个标头,但浏览器似乎不想缓存它,而是每次都加载它们。