bdunogier/ezdispatchabledfs

eZ Publish Dispatcher DFS后端

安装: 6

依赖项: 0

建议者: 0

安全: 0

星标: 1

关注者: 14

分支: 3

类型:ezpublish-legacy-extension

v1.0.0-beta4 2014-09-12 06:49 UTC

This package is not auto-updated.

Last update: 2024-09-10 07:34:56 UTC


README

这是什么?

此扩展本身不会提供任何新的最终用户功能。

此扩展提供自定义DFSBackend,根据文件路径将调用分配到自定义列表中的后端。

这使得将一些存储子目录存储到自定义处理器,如基于云的处理器成为可能。

实际处理器

一个AWS-S3处理器,可以将二进制文件存储到Amazon S3,是可用的: http://github.com/ezsystems/ezdfs-fsbackend-aws-s3

要求

  • eZ Publish master (5.4.0-dev或2014.05)。
  • eZ DFS已配置(NFS本身并不重要,本地目录也可以正常工作)

安装

使用composer

可以从eZ Publish(新堆栈或旧版本)通过composer安装它

composer require "ezsystems/ezdfs-fsbackend-dispatcher:~1.0@beta"

或者通过将"ezsystems/ezdfs-fsbackend-dispatcher": "~1.0@beta"添加到您的项目的composer.json文件中。

配置

由于INI设置加载顺序的限制,一些设置不能存储在扩展INI文件中,而应存储在全局覆盖中。

设置/file.ini.append.php文件的内容必须复制到settings/override/file.ini.append.php中,或者显然合并到其中,因为它应该已经存在。

后端通过在file.ini中将它们的类名添加到DFSBackends数组中进行配置。这将使调度程序将路径以var/ezdemo_site/storage/images开始的文件操作发送到MyCustomBackend。

PathBackends[var/ezdemo_site/storage/images]=MyCustomBackend

优先级是简单的先来先服务。与PathBackends中的任何路径都不匹配的路径将由默认设置为eZDFSFileHandlerDFSBackendDispatchableDFS.DefaultBackend处理。

后端初始化

默认情况下,后端使用简单的"new $class"进行实例化。但如果后端实现了eZDFSFileHandlerDFSFactoryBackendInterface接口,它将通过调用静态build()方法进行构建。

如果需要进行任何类型的初始化或注入,可以在该方法中完成。

一个典型的设置/override/file.ini.append.php,其中启用了自定义处理器,看起来像这样

[ClusteringSettings]
FileHandler=eZDFSFileHandler

[eZDFSClusteringSettings]
MountPointPath=/media/nfs
DFSBackend=eZDFSFileHandlerDFSDispatcher
DBHost=cluster_server
DBName=db_cluster
DBUser=root
DBPassword=
MetaDataTableNameCache=ezdfsfile_cache

[DispatchableDFS]
DefaultBackend=eZDFSFileHandlerDFSBackend

PathBackends[var/site/storage/images]=MyCustomBackend

请记住,DefaultBackend 必须在全局覆盖中明确配置才能被考虑。