使用collectstatic在Amazon S3上编辑文件

时间:2013-08-05 09:04:25

标签: django amazon-s3

我正在使用Amazon S3来提供我的静态文件。一切都已设置好,当我最初创建我的CSS文件并运行

python manage.py collectstatic
它告诉我一切都很顺利,我的CSS文件被复制了。当在浏览器中查看存储桶时,它确实存在。当我在本地编辑文件并重新运行collect static时,它告诉我没有复制静态文件,但修改了73个。当我在浏览器中检查时,CSS文件中不存在更改;它看起来就像我创建的初始版本。

我认为这是一个权限错误,当我检查时,我发现每个人都没有编辑权限(我知道我不应该让每个人都编辑它,但我只想让它暂时工作)。我改变它,所以每个人都可以编辑,查看和下载,并试图回忆静态但无济于事。该文件尚未编辑。

我错过了什么吗?

3 个答案:

答案 0 :(得分:3)

原因很奇怪。有效的问题是时区。由于时差差异,它认为S3上的文件比本地文件更年轻。我通过使用以下内容编辑settings.py中的TIME_ZONE变量来修复此问题:

TIME_ZONE = None

答案 1 :(得分:0)

真的很奇怪,但将TIMEZONE改为None也对我有用。

答案 2 :(得分:0)

我使用Django 1.10.6并使用this tutorial来获取在S3上运行的静态文件。

对我来说TIME_ZONE = None没有用。但这对我有用:

TIME_ZONE = 'UTC'

所以我创建了一个 settings / collectstatic.py 文件来运行本地和同步s3文件到生产。