Jok*_*ker 9 django amazon-s3 amazon-web-services
我正在使用Amazon S3为Django项目存储静态文件,但是collectstatic没有找到更新的文件 - 只有新文件.
我一直在寻找答案,我的猜测是我的配置不正确.我按照这篇博客文章来帮助设置所有内容.
我也碰到了这个与我的问题相同的问题,但我已经尝试了所有的解决方案.
以下是一些可能有用的信息:
settings.py
...
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'django.contrib.staticfiles.finders.DefaultStorageFinder',
)
...
# S3 Settings
AWS_STORAGE_BUCKET_NAME = os.environ['AWS_STORAGE_BUCKET_NAME']
STATICFILES_STORAGE = 'storages.backends.s3boto.S3BotoStorage'
S3_URL = 'http://%s.s3.amazonaws.com/' % AWS_STORAGE_BUCKET_NAME
STATIC_URL = S3_URL
AWS_PRELOAD_METADATA = False
Run Code Online (Sandbox Code Playgroud)
requirements.txt
...
Django==1.5.1
boto==2.10.0
django-storages==1.1.8
python-dateutil==2.1
Run Code Online (Sandbox Code Playgroud)
EDIT1:
如果这个问题对我自己的情况来说过于独特,对大量观众有任何帮助,我深表歉意.尽管如此 - 这长期以来一直在阻碍我的工作效率,而且我浪费了很多时间寻找解决方案,所以我开始奖励那些可以帮助解决这个问题的人.
EDIT2:
我刚刚遇到了类似的问题.我的时区与我的AWS桶的位置不同.如果默认情况下collectstatic使用时间戳,这会干扰进程吗?
谢谢
我想我解决了这个问题.和你一样,我在这个问题上花了这么多时间.我也在你在bitbucket上找到的bug报告.这就是我刚刚完成的事情.
我有
django-storages==1.1.8
Collectfast==0.1.11
Run Code Online (Sandbox Code Playgroud)
这根本不起作用.删除所有内容一次也不起作用.在那之后,它无法接受修改并拒绝更新任何内容.
问题在于我们的时区.S3会说它的文件最后修改的时间晚于我们要上传的文件.django collectstatic将不会尝试复制新的.它将调用文件"未修改".例如,这是我在修复之前看到的内容:
Collected static files in 0:00:45.292022.
Skipped 407 already synced files.
0 static files copied, 1 unmodified.
Run Code Online (Sandbox Code Playgroud)
我的解决方案是"改变时间的地狱!".除了我们在这里解决的时区问题,如果我犯了错误并需要回滚怎么办?它将拒绝部署旧的静态文件并使我的网站崩溃.
这是我对Collectfast的请求https://github.com/FundedByMe/collectfast/pull/11.我仍然留下一面旗帜,所以如果你真的想检查修改时间,你仍然可以做到.在合并之前,只需使用我的代码https://github.com/sunshineo/collectfast
你有美好的一天!
- 戈登PS:为此,一直待到凌晨4点40分.我的日子已经毁了.
经过几个小时的挖掘,我发现了这个错误报告.
我改变了我的要求,恢复到以前版本的Django存储.
django-storages==1.1.5
Run Code Online (Sandbox Code Playgroud)
您可能需要考虑使用 Github 上 antonagestam 编写的这个插件: https: //github.com/FundedByMe/collectfast
它比较文件的校验和,这是确定文件何时更改的有保证的方法。这是另一个 stackoverflow 问题中公认的答案:Faster replacement to manage.py Collectstatic (w/ s3boto storage backend) to sync static files to s3?
| 归档时间: |
|
| 查看次数: |
3617 次 |
| 最近记录: |