Onedrive云盘程序——OneManager⼩⽩设置指南OneManager是什么
这是⼀个利⽤微软onedrive api将onedrive⽬录映射成⼀个云盘的程序,类似的程序有很多,⽐如OneIndex、Pyone、OnePoint等等。这个程序的特点是⽀持多种onedrive类型,可以部署在vps,heroku,以及腾讯云scf上。
项⽬地址
我的Demo
部署教程
参考项⽬readme说明,⽹上也有不少教程,这不是本⽂的重点。
后台设置
登录后,在管理>设置⾥有⼀些⾃定义设置,有些⼈不清楚这些设置是⼲嘛的,这可以理解,毕竟项⽬的说明写的太简单了。
adminloginpage
⾃定义登录地址,设置后就会隐藏登录按钮(有些主题本来就没有登录按钮),登录时需要⼿动在⽹盘地址后加上?你设置的值进⾏登录。
⽐如设置为abc,那么你只能通过xxx/xxx?abc地址来登录 。所以⼀旦设置就要记住你设置的值,不然连你⾃⼰也没法知道登录地址那就⿇烦了。
这个设置是为了防⽌别⼈通过默认的登录界⾯尝试登录你的⽹盘,设置本项后只要猜不到登录界⾯,即使别⼈知道登录密码也没⽤,多⼀道防护墙,让⽹盘更安全。
background
⾃定义背景图⽚,填⼊⼀个图⽚的url地址,因为图⽚加载通常需要更多时间,为了速度考虑不建议放⼊⼤体积图⽚。
customCss
设置⾃定义css的地⽅,这⾥设置的css会作⽤于⽹盘所有页⾯。
⽐如我想隐藏语⾔选项框:
<style>.changelanguage{display:none}</style>
customScript
设置⾃定义js,会作⽤于所有页⾯。
⽐如设置http重定向到https:
<script type="text/javascript">
var targetProtocol = "https:";
if (window.location.protocol != targetProtocol)
window.location.href = targetProtocol + window.location.href.substring(window.location.protocol.length);
</script>
customTheme
通过url的⽅式引⽤html主题,⽐如你可以通过设置下⾯的地址来使⽤我的主题。
cdn.jsdelivr/gh/kizx/onemoe-theme/onemoe.html
disableChangeTheme
设置为1后游客将不显⽰右下⾓的主题切换功能。
disableShowThumb
设置为1后将不显⽰缩略图的按钮和功能,对于云函数⽤户来说,建议设为1来关闭该功能,因为该功能可能点⼀下就是⼀分钱。
hideFunctionalityFile
设置为1后,游客浏览⽹盘时就会看不到read.md,head.md,head.ofm,f这些⽂件,这些⽂件是⼲嘛的后⾯会说。
passfile
设置密码⽂件名,⽐如这⾥设置为,那么在某⼀个⽬录下新建⼀个⽂件,其中写⼊密码,这样任何⼈在浏览这个⽹盘⽬录时都需要输⼊相应密码后才能访问。
sitename
设置⽹站名称。
theme
切换主题。
timezone
设置时区,国内可设置为8。
以下是多盘设置
diskname
多盘在⽹盘界⾯显⽰的名称。
domain_path
当绑定多个域名时,可以使不同域名打开时访问不同⽬录。当然如果你只有⼀个域名也可以⽤,通过这种⽅式可以使当前域名访问⼀个指定⼦⽬录,和后⾯的public_path起到⼀样的作⽤。
下⾯是两个域名的设置⽅法,中间⽤|隔开,如果有多个域名只设置⼀个域名时,未设置的域名好像也会只访问该⽬录,要访问根⽬录dirname设置为/。
domain1:/dir1name|domain2:/dir2name
downloadencrypt
设置为1时启⽤该功能,这样在设置了密码的⽬录下的⽂件虽然⽆法在⽹页端浏览,但可以通过具体的⽂件链接进⾏下载。
guestup_path
设置图床路径或者叫游客上传路径,设置后游客只能看到上传按钮看不到⽬录下的⽂件。
public_path
设置该盘的显⽰的根⽬录,默认为/,换个说法就是可以显⽰指定的⽂件夹,默认显⽰全部。
⽐如我们只想将⽹盘下的public⽂件夹内容作为⽹盘,可以设置为/public/。
有了这个功能,即使只有⼀个onedrive账号,我们也可以通过重复绑定同⼀个账号来⽣成多盘,然后
每个盘的public_path设置为不同的路径,这样可以将⼀个盘的功能分开。
还有⼀种特殊情况是我既想让游客上传⽂件,⼜想让游客看见上传后的⽂件⽬录,⽬前就只能通过这种⽅法将该⽬录设置到两个盘,⼀个盘作上传,⼀个盘作⽬录展⽰。
进阶设置
设置⽹站ico图标
将favicon.ico图⽚放在⽹盘根⽬录下,如果你设置了多盘的的话,则需要在每个盘的根⽬录下都放置⼀个favicon.ico⽂件,新版的html主题只需要在绑定的第⼀个盘下⾯设置就⾏了。
当然你也可以在customCss或customScript中进⾏全局设置:
<link rel="icon" href="t/favicon.ico" type="image/x-icon">
这⾥我使⽤了腾讯云的⽹站图标,你应该改为⾃⼰的favicon.ico图⽚地址。
刷新⾃动切换背景图⽚
这个是通过设置特殊的图⽚api来实现的,这些api每次刷新都会返回⼀张不同的图⽚,将后台backgro
und设置为这些api的url即可。
⽹上类似的api有很多,以下是友收集的免费图⽚api:
api.ixiaowai/api/api.php (⼆次元动漫)
/random.php(⼆次元随机图)
api.ixiaowai/mcapi/mcapi.php (menhera酱)
api.ixiaowai/gqapi/gqapi.php (风景)
acg.yanwz/wallpaper/api.php(⼆次元随机图)
利⽤index.html设置⾃定义页⾯
如果⼀个⽬录下有名为index.html的⽂件,则直接显⽰该⽂件,可以利⽤这个功能设置⼀个⾃定义页⾯或者⽤于隐藏⼀个特定页⾯,相当于部署了⼀个静态页⾯。
设置顶部和底部说明⽂字
在需要展⽰顶部说明的⽬录下新建⼀个head.md⽂件,在⽂件⾥写⼊说明内容即可,这是⼀个markdown⽂件,可以使⽤markdown语⾔进⾏书写。
底部说明说明⽂字对应的是readme.md⽂件,规则与顶部⽂字⼀样。
利⽤f设置⼀⾔
在想展⽰⼀⾔的⽬录新建f⽂件,然后写⼊以下内容:
<p id="hitokoto">:D 获取中...</p>
javascript说明<script>
fetch('v1.hitokoto')
.then(response => response.json())
.then(data => {
const hitokoto = ElementById('hitokoto')
hitokoto.innerText = data.hitokoto
})
.)
</script>
下⾯是接⼝展⽰,刷新看看!
以有涯随⽆涯,殆已!已⽽为知者,殆⽽已矣!
以上是使⽤了 的⼀⾔接⼝,你也可以尝试更换其他接⼝或者⾃建接⼝。
利⽤f设置Valine评论
使⽤Valine需要先注册并实名认证,然后新建应⽤获取AppID和AppKey。
具体过程参考:
然后新建f,写⼊以下内容(注意填⼊替换⾃⼰的AppID和AppKey):
<script src='//unpkg/valine/dist/Valine.min.js'></script>
<div id="vcomments"></div>
<script>
new Valine({
el: '#vcomments',
appId: '你获取的AppID',
appKey: '你获取的AppKey'
})
</script>
ps: 上⾯的js⽤的是unpkg的cdn,国内速度完全不⾏,建议改⽤jsdelivr的cdn
<script src='//cdn.jsdelivr/npm/valine/dist/Valine.min.js'></script>
展⽰Demo见:
如果对样式不满意,建议直接在omf⽂件写css美化。
设置动态背景
这⾥的动态背景指我们经常在⼀些⽹页见到的那种下雪、粒⼦线条、彩条等动态背景,⼀般是通过js实现的,可以⾃⼰在⽹上现成的教程,js我不会,这⾥只展⽰⼀种我到的动态彩条背景。
我将下⾯的代码写在了f中,可以访问 查看其效果。
<script size="90" alpha="0.5" zIndex="0" src="pan.2bboy/ppx/test/ribbon.js" type="text/javascript" charset="utf-8"></script>
其中最重要的是 这个js⽂件,我将他放在⽹盘⽬录下,你应该下载该⽂件放在⾃⼰的云空间⾥,然后替换引⽤的地址。
如果将代码放在omf⽂件⾥则只能在当前⽬录有效果,设置在后台的customScript中就可以全局⽣效了。
美化⾃定义登录页⾯
修改common.php相应地⽅,添加style和br
$html .= '
<style>body{background-image:linear-gradient(60deg,#343b44 0%,#485563 100%);background-
attachment:fixed;color:#343b44}body>div{position:absolute;text-align:center;background-color:rgba(221,221,221,.5);border-
radius:20px;width:75vw;max-width:500px;height:350px;margin:auto;top:25%;bottom:50%;left:0;right:0}body>div:hover{box-shadow:3px 3px 6px 3px rgba(0,0,0,.3)}h4{font-size:40px}input{font-size:20px;margin:2%auto;border:#343b44 2px solid;border-radius:10px;padding:10px;height:50px;text-align:center}input:last-of-type{color:#343b44;height:50px;width:80px;font-weight:800}input:hover:last-of-type{cursor:pointer;color:#ddd;background-color:#485563}</style>
<body>
<div>
<center><h4>'.getconstStr('InputPassword').'</h4>
<form action="" method="post">
<div>
<input name="password1" type="password"/>
</br>
<input type="submit" value="'.getconstStr('Login').'">
</div>
</form>
</center>
</div>
';
⼩知识
部署到scf上没有显⽰缩略图的功能,这是因为该功能过于消耗流量,点⼀次⼀分钱就没有了,为了钱包考虑作者把scf上的这个功能阉割了
新版的主题可以在后台⾃定义开启或关闭该功能,建议关闭。
游客上传⽂件只能单个上传,不能批量上传。
由于scf的缓存系统,在scf上进⾏某项改动后有时候不会⽴马⽣效,或者刷新时⽽⽣效时⽽不⽣效,只要多等⼀会⼉,等旧缓存⾃⼰失效就好了。
php格式的主题为旧版主题,html格式的主题为新版主题,不同主题的作者更新频率和⽀持功能都可能不同,功能测试请以最新版本的默认主题为准。
⽂章来⾃
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论