跳转到主要内容

从Plone访问文件系统

项目描述

简介

Reflecto 是一个工具,可以将文件系统的一部分集成到 Plone 网站中。它允许您浏览文件系统层次结构并访问其中的文件。文件表示为简单的可下载对象,而不是完整的 CMF 或 Plone 内容类型。

要求

  • Plone 3.1 或更高版本

  • TextIndexNG3 是可选的,但需要索引非文本文件。

文件名策略

文件名必须是有效的 Zope id。此外,以点或“@@”开头的文件名也被视为无效。不符合这些标准的文件将被忽略。

这意味着文件名基本上只能是 ASCII 字符,不能以 aq_@@._ 开头,不能以 __ 结尾,也不能包含 +

更多信息

有关新版本,请访问 plone.org 上的 Reflecto 产品页面

请在 Reflecto 问题跟踪器 中报告错误和功能请求。

致谢

资助

Trolltech

设计和开发 –

Jarn Simplon B.V. Wichert Akkerman, Martijn Pieters

Universal Encoding Detector

Mark Pilgrim, Netscape Communications Corporation

变更日志

3.0.6 - 2014 年 6 月 5 日

  • 修复了一些文件不返回任何编码的问题。让我们回退到 ASCII。[keul]

  • Content-Disposition 标头中引用文件名,以防止 Chrome 浏览器中的 ERR_RESPONSE_HEADERS_MULTIPLE_CONTENT_DISPOSITION 问题。[keul]

3.0.5 - 2013 年 7 月 11 日

  • 修复了创建新的 Reflectors 并在它们被移除时取消索引的回归。[davisagli]

3.0.4 - 2013 年 7 月 9 日

  • 在实例化子代理时传递基本反射器路径,以便它们可以在不使用收购包装的情况下确定其文件系统路径。这对于与 collective.indexing 兼容是必需的。[davisagli]

3.0.3 - 2013 年 7 月 5 日

  • 让 ReflectoFile 的 SearchableText 方法在可用的情况下使用 TextIndexNG3 转换器。当使用 collective.solr 而不是 TextIndexNG3 或默认的 Plone 目录索引时,这很有用。[davisagli]

3.0.2 - 2013 年 7 月 3 日

  • 更改了在实时模式下避免索引反射项的技术。新技术不会与 collective.indexing 的索引方法猴子补丁冲突。[davisagli]

  • 检测文件的字符集,并在索引 SearchableText 时将其编码为 utf8,即使不使用 textindexng。[davisagli]

  • 添加了 zope.app.container 依赖项。[danjacka]

3.0.1 - 2013 年 6 月 19 日

  • 修复了防止创建新 Reflectors 的回归。[davisagli]

3.0 - 2013 年 6 月 18 日

  • 如果存在 plone.app.uuid,为反射文件提供 UUID。该 UUID 基于主要反射器的 UID 和文件的路径。[davisagli]

3.0b1 - 2013年1月23日

  • 确保反射文件实现所有三个方法(!!!)以返回内容类型。这解决了显示文本文件的问题。

  • 在遍历目录内容时记录跳过的文件。

  • 在索引内容时手动分割文件名。这允许搜索文件名。这之前不工作是因为标准索引器去掉了点,这对文件名来说效果不佳。

2.5.1 - 2012年5月8日

  • 包修复 [aclark]

2.5 - 2012年5月8日

  • 修复了与 Plone 4.1 兼容的损坏导入 [swampmonkey]

  • 通过删除 z2-style 接口和调整一些导入,使与 Plone 4/Zope 2.12 兼容 [tom_gross]

2.4 - 2009年7月17日

  • 禁用反射器代理中 AT 引用的递归处理:代理文件系统数据永远不可引用,因此这只会减慢速度。[wichert]

  • 在添加反射器代理后禁用所有者修复。这防止在复制/粘贴反射器后进行缓慢的树遍历。[wichert]

  • 静默 manage_after* 废弃警告。[wichert]

2.3 - 2009年6月19日

  • 在生命模式下运行时不要索引文件系统数据。这确保目录中没有过时的数据。[wichert]

  • 在文件夹内容视图中不要添加文件 URL 的尾随斜杠。这确保基本 URL 是正确的,并且 html 文件中的相对路径可以正常工作。[wichert]

  • 将特定于文件的 MIME 类型逻辑移动到 ReflectoFile 类,并使默认实现始终返回 application/octet-stream。这解决了目录索引的问题。[wichert]

2.2 - 2009年4月16日

  • 使用 mimetypes_registry 工具查找文件的 MIME 类型,只有当工具无法识别文件时才回退到系统 MIME 类型注册表。[wichert]

  • 正确设置文件下载的 Content-Type 头部。[wichert]

2.1 - 2008年8月5日

  • 返回空列表而不是引发异常,该异常在访问尝试使用文件系统中不存在路径的反射器时触发网站错误。旧行为对用户来说不直观,并使迁移网站变得极其困难。[wichert]

  • 更新 TextIndexNG3 支持代码以包括对象的标题(即文件名)在 SearchableText 中。[wichert]

  • 将 Reflecto 做为 ATCT 内容类型,以使其更好地与 Plone 集成。这是由 Reflecto 实例从其父实例继承 excludeFromNav 数据所触发的,这使得它们由于神秘的原因在网站导航中不出现。[wichert]

  • 修复 Last-Modified 头部格式。[elro]

  • 添加 WebDAV 支持。[elro]

  • 在查找 MIME 类型之前将文件名转换为小写。这修复了大写文件名的不正确 MIME 类型。[wichert]

  • 从反射器类型中删除属性别名。在 Plone 3.x 中这是过时的。[wichert]

  • 将 CSRF 验证器添加到 folder_contents 页面。这意味着 Reflecto 现在需要 Plone 3.1,或者需要 CSRF 热修复的 Plone 3.0。这修复了 http://plone.org/products/reflecto/issues/30。[wichert]

2.0(发布于 2008/05/14)

  • 使用文件夹_contents 按钮的正确标题。[wichert]

  • 添加支持将文件夹作为 zip 文件下载。[wichert]

  • 如果安装了 CacheSetup 允许用户调整单个反射器实例的缓存规则。[wichert]

  • 在 Windows 上上传文件时防止 CR/LF 转换。这修复了编号为 22 的错误(请参阅 http://plone.org/products/reflecto/issues/22)。[wichert]

  • 移植到 Plone 3。[wichert]

  • 添加一个“实时”选项,使 Reflecto 显示实时文件系统数据而不是编目数据。[wichert]

  • 正确修复 Plone 版本测试。这修复了编号为 11 的错误(请参阅 http://plone.org/products/reflecto/issues/11)。[wichert]

1.2(发布于 2007/09/05)

  • 将权限掩码从 600 更改为 644 [FinnArild]

  • 问题 #1:在 SearchableText 中包含标题。[mj]

  • 问题 #2:为目录添加 SearchableText 实现,返回标题。[mj]

  • 更新了安装方法,如果使用Plone 3,则使用CMF 2.1 GenericSetup接口。[wichert]

  • 更新了当前Zope 3已弃用的导入。[wichert]

  • 更新了测试以支持Plone 3.0使用的Archetypes 1.5。[wichert]

  • 在tests目录中更新了@@index视图模拟注册,适用于Plone 3.0。[mj]

  • 修复了Plone 3.0的内容选项卡。[mj]

1.1(发布于2007/06/28)

  • 修复了子目录中上传文件和创建目录的问题。[mj]

1.0(发布于2007/06/27)

  • 首次发布。[mj]

支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面