用于统计html浏览器资源压缩的wsgi中间件。
repoze.squeeze的Python项目详细描述
这个包提供了一个“挤压”的wsgi中间件组件。 通过合并浏览器资源(javascript 以及样式表)。
它使用统计分析来确定基于 通过它的HTML文档。观察到不同的标题,如 是资源过期日期。
未压缩的文档在 期望我们能在足够的 磨合。压缩文件的有效期不迟于 比压缩资源的到期日 参考文献。
用法
使用以下两个选项配置中间件(必需):
@cache_dir: Relative path to a directory where we store squeezed resources
@url_prefix: Path segment or full base URL that will be used to serve the cache directory as static files.
以下选项是可选的:
@threshold: Floating-point parameter that controls the merge to apperances threshold. This parameter can normally be left at the default (0.5).
此外,您必须配置wsgi应用程序来提供文件 来自url_prefix(例如“cache”)的缓存目录。
失效
要使文件缓存失效,上游应用程序可以设置 “x-squeze-invalidate”标题为真值;注意 应用程序被调用,中间件将此密钥添加到环境中 这样,不能修改环境的应用程序仍然可以 无效标志:
>>> invalidate = environ["X-Squeeze-Invalidate"] >>> invalidate()
这将重置文件缓存注册表;请注意,没有缓存文件 曾经删除过(为了保持web服务器的完整性)。你可以手动 删除文件时随时清除文件缓存(这是 在运行时允许)。
更改日志
0.4.4(发布日期:2009-06-22)
- 修复了响应没有字符集的边缘情况 已定义,因此无法表示为Unicode。[马尔特]
- 固定的边缘情况与自闭式元素。[马尔特]
- 修复了缺少ttl值的边大小写问题。[马尔特]
0.4.3(发布日期:2009-05-11)
- 增加了文件缓存的环境变量控制 无效。[马尔特]
0.4.2(发布日期:2009-05-11)
- 在javascripts后面添加分号以确保任何函数块 正确终止(由于连接而必需)。[马尔特]
0.4.1(发布日期:2009-04-20)
- 分析Unicode正文以确保正确的字符解码。[马尔特]
0.4(发布日期:2009-04-15)
- 如果响应的状态为“304未修改”,则更新ttl,但是 不是内容。[马尔特]
- 如果脚本或样式标记没有源或链接,请忽略 它。[马尔特]
- 查询缓存时取消引用请求url。[马尔特]
- 添加了对repoze.xmliter的支持,允许重用 lxml中间产品之间的文档树。[马尔特]
- 合并时,样式表的媒体类型现在被考虑在内 资源。squeze使用css2@media<;type>;语法。[jvloothuis]
0.3(2008-10-08发布)
- 出现在样式表中的相对url现在是绝对的 合并。[马尔特]
0.2(2008-10-03发布)
- 添加setuptools作为依赖项。[马尔特]
0.1(2008-10-02发布)
- 初次发布。