gpt4 book ai didi

django - 如何将 django-compressor 与 apache 一起使用?

转载 作者:行者123 更新时间:2023-12-01 19:35:48 25 4
gpt4 key购买 nike

我一直在使用 Django Compressor 来管理我的 Coffee/less 文件,它非常适合开发,但在使其适用于我的生产部署时遇到了一些问题。

我的想法是让 apache 托管静态文件,可能在另一台服务器上。我正在设置COMPRESS_OFFLINE = True关于settings.py文件。

然后我执行以下操作

  • python manage.py compress - 这填充了CACHE我的目录 static目录,所有静态文件将收集在其中。
  • python manage.py collectstatic - 这会将我项目中所有应用程序(其中一些不使用压缩器)的静态文件收集到我的 static 中目录。
  • 复制static目录由 apache 托管。并设置 apache 来提供文件服务。
  • 修改 static_url settings.py 中的变量文件指向静态服务器。

如果我打开任何页面,我的服务器上会出现以下错误,这似乎只在我有 DEBUG = False 时才会发生。和COMPRESS_OFFLINE = True在我的settings.py上文件:

TemplateSyntaxError: Caught OfflineGenerationError while rendering: You have offline compression enabled but key "777ba26736d046ab043dc151e7e9a060" is missing from offline manifest. You may need to run "python manage.py compress".

当我检查static/CACHE时目录,我确认错误所说的内容,这是我的 manifest.json文件:

{
"6189b8598993d1cbdbd35d4dfd1a6711": "<script type=\"text/javascript\" src=\"http://192.168.1.123/CACHE/js/2f6ca6616bd6.js\"></script>",
"5c66dbed0e5b766c6e32773cd8585f3c": "<link rel=\"stylesheet\" href=\"http://192.168.1.123/CACHE/css/154d95903951.css\" type=\"text/css\" />"
}

如果我删除 CACHE 目录并重新运行 python manage.py compress ,我在错误消息和 list 文件中都收到了一组新的 ID,但 list 文件中仍然缺少错误的 ID。

所以,我想这里有两个问题。为什么它不起作用?实现这一目标的正确方法是什么?

谢谢。

最佳答案

如果您已运行压缩,但仍然收到消息

OfflineGenerationError: You have offline compression enabled but key "4971a40e3b459a8cda8287a7f7caa96d" is missing from offline manifest. You may need to run "python manage.py compress"

那么压缩标签内可能有动态内容。确保 compress 始终是最里面的 block ,并且 compress block 内没有标签。

关于django - 如何将 django-compressor 与 apache 一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10146170/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com