河畔志 首页 归档 关于 链接

标签 dokuwiki 下的文章

本地网页直链网盘文件夹

就算用搜索,在网盘中直接管理文件还是各种不方便,于是突发奇想把文件夹链接出来,在本地用 dokuwiki 之类的东西管理信息就方便很多。

坚果云一般的文件地址是:

https://www.jianguoyun.com/#path=xxx::sl=0::tab=browse::id=xxx::magic=xxx

稍加思索,冷静分析,在 dokuwiki 的 interwiki.local.conf 里写下:

cd        https://www.jianguoyun.com/\#path=%2F{NAME}::sl=0::tab=browse::id=xxx::magic=xxx

于是就可以这样链接:

[[cd>2018_测试文件夹]]

新世界的大门就此打开 =v=

百度云也可以如法炮制:

https://pan.baidu.com/disk/home?#/all?vmode=list&path=xxx

而微云就尴尬了:

https://www.weiyun.com/disk/folder/乱七八糟的东西

有点奇技淫巧的感觉,不过很大程度上提高了效率。

Dokuwiki 文件名中文乱码解决

本地搭了个 Dokuwiki 做知识库,但出现文件名乱码问题。

之前在 Linux 服务器上修改 conf/local.php 里的 $conf['fnencode'] = 'utf-8'; 就可以了,而简中 win7 使用 gbk 编码文件名:$conf['fnencode'] = 'gbk';

然后根据官方文档,照着修改了 inc/pageutils.php 中两个函数解决问题:

function utf8_encodeFN($file,$safe=true){
    global $conf;
    if($conf['fnencode'] == 'utf-8') return $file;
 
    if($safe && preg_match('#^[a-zA-Z0-9/_\-\.%]+$#',$file)){
        return $file;
    }
 
    if($conf['fnencode'] == 'safe'){
        return SafeFN::encode($file);
    }
 
   //新增下面这段代码
    if($conf['fnencode'] == 'gbk'){
        return mb_convert_encoding($file,'gbk','UTF-8');
    }
 
    $file = urlencode($file);
    $file = str_replace('%2F','/',$file);
    return $file;
}

function utf8_decodeFN($file){
    global $conf;
    if($conf['fnencode'] == 'utf-8') return $file;
 
    if($conf['fnencode'] == 'safe'){
        return SafeFN::decode($file);
    }
   //新增下面这段代码
    if($conf['fnencode'] == 'gbk'){
        return mb_convert_encoding($file,'UTF-8','gbk');
    }
 
    return urldecode($file);
}