ブログ カレンダー

« « 2017 9月 » »
27 28 29 30 31 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

カテゴリ一覧

アーカイブ

最新のエントリ

最新のコメント

最新のトラックバック

趣味のブログ - Pydio の WebDAV サーバで . から始まる隠しファイルを扱う

Pydio の WebDAV サーバで . から始まる隠しファイルを扱う

カテゴリ : 
Ajax
執筆 : 
OhYeah! 2015.01.23 00:12
AjaXplorer で . で始まる隠しファイルを扱うにはファイルシステムのドライバ設定を変更するしかなかったが、Pydio に改名したバージョン 5 以降では、ユーザアカウント毎にパラメータを追加できるようになり、特定ユーザの特定リポジトリのみ . で始まる隠しファイルを扱えるようにするなんてことが可能になった。が、この設定をしたリポジトリであっても、WebDAV クライアントからは . で始まる隠しファイルが扱えないというバグがある。
このバグの修正方法は次のとおり。5.x.x/6.0.x とも同じ。
バグ修正の元ネタはここ。ただし、ここに掲載されているコードもそのままでは動作しないので、注意が必要。
https://pyd.io/f/topic/webdav-issues/

修正点は2点。これだけで、SHOW_HIDDEN_FILES パラメータを追加して Yes に設定したユーザ&リポジトリの . で始まる隠しファイルが WebDAV サーバから見えるようになる。

まず、/core/classes/class.AJPX_Plugin.php 138 行目の protected を
    protected function getFilteredOption($optionName, $repositoryScope = AJXP_REPO_SCOPE_ALL)

    public function getFilteredOption($optionName, $repositoryScope = AJXP_REPO_SCOPE_ALL)
と public にする。

次に、/core/classes/sabredav/ajaxplorer/class.AJXP_Sabre_Collection.php 156 行目の
            if ( !$this->repository->getOption("SHOW_HIDDEN_FILES") && AJXP_Utils::isHidden($file)) {

            if ( !$this->getAccessDriver()->getFilteredOption("SHOW_HIDDEN_FILES", $this->repository->getId()) && AJXP_Utils::isHidden($file)) {
に修正する。

トラックバック

トラックバックpingアドレス http://www.o-ya.net/modules/d3blog/tb.php/63

コメント一覧