ShareList是个目前来说挂载最全的网盘目录程序,简洁易用、速度极快。
博主写本文章的目前版本可挂载:
本地文件
FTP
WebDAV
Github
天翼云
和彩云
蓝奏云
OneDrive
GoogleDrive
Teambition
相关链接
Github:https://github.com/reruin/sharelist
官方文档:https://reruin.github.io/sharelist/docs/#/zh-cn/
环境
Nginx
NodeJs>=8.0
PM2管理器(可选,推荐安装)
安装
一键安装
脚本安装适合不熟悉NodeJs的用户。
执行命令后将自动安装NodeJs环境,并在当前目录(执行命令的目录)安装sharelist。
wget --no-check-certificate -qO- https://raw.githubusercontent.com/reruin/sharelist/master/netinstall.sh | bash
手动安装
如果已有NodeJs环境,或者需要在windows下安装,可选择手动安装。
git clone https://github.com/reruin/sharelist.gitcd sharelistnpm installnpm install pm2 -g#已安装pm2管理器执行下面(可选)pm2 start app.js --name sharelist --env prodpm2 savepm2 startup#更新bash update.sh
Docker
docker run -d -v /etc/sharelist:/sharelist/cache -p 33001:33001 --name="sharelist" reruin/sharelist
安装完成后即可使用 http://ip:33001 访问
!注:无法访问的请检查主机商或面板等是否开放33001端口
反代理设置
手动添加反代理
在当前网站的nginx配置文件填入
location ~* .(php|jsp|cgi|asp|aspx)${ proxy_pass http://127.0.0.1:33001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr;}location /{ proxy_pass http://127.0.0.1:33001; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; expires 12h;}
宝塔添加反代理
名称随意
目标rul:http://127.0.0.1:33001
至此你就可以通过http://ip:33001或域名访问你的sharelist进行初始化配置了
!注:如输入密码后无法进入 请检查目录权限全目录改为755
后台管理
初始化过后 你可以在后台管理中进行设置和添加网盘
访问 http://localhost:33001/manage,填写口令即可进入后台管理。
以od为例挂载网盘
添加一个路径 名称随意 挂载路径为“/”
回到网站首页 即可以根据引导挂载网盘
指定目录挂载
成功挂载后 可指定挂载网盘中的某一目录
将“/”修改为你的目录
目录加密
在需加密目录内新建 .passwd 文件,type为验证方式,data为验证内容。
目前只支持用户名密码对加密(由auth.basic插件实现)。 例如:
type: basic data: - user1:111111 - user2:aaaaaauser1用户可使用密码111111验证,user2用户可使用密码aaaaaa验证。请参考example/secret_folder/.passwd。
挂载说明
挂载GoogleDrive
1. 使用分享ID挂载
由plugins/drive.gd.js插件实现。
挂载标示:gd挂载内容:分享的文件ID
2. 使用官方API挂载
由plugins/drive.gd.api.js插件实现。
挂载标示:gda
挂载标示:gda 挂载内容: 文件(夹)id->应用ID|应用机钥|回调地址|refresh_token 文件(夹)id /
ShareList会根据填写的挂载内容的不同形式,自动开启挂载向导,按指示操作即可。
挂载OneDrive
1. 使用分享ID挂载
由plugins/drive.od.js插件实现。
挂载标示:od 挂载内容:分享的文件ID。
2. 使用官方API挂载
由plugins/drive.od.api.js插件实现。
挂载标示:gda 挂载内容: 文件(夹)id->应用ID|应用机钥|回调地址|refresh_token 文件(夹)id /
ShareList会根据填写的挂载内容,自动开启挂载向导,按指示操作即可。
对于不符合OneDrive安全要求的域名,将采用中转方式验证,查看中转页面。
注意:由于onedrive修改了政策,个人Microsoft帐户已无法通过向导进行绑定。 需前往 Azure管理后台 注册应用并获取 app_id 和 app_secret 。
3. 挂载OneDrive For Business
由plugins/drive.odb.js插件实现。
挂载标示:odb 挂载内容:分享的url
挂载本地文件
由drive.fs.js插件实现。
挂载标示:fs 挂载内容:文件路径。
注意:统一使用unix风格路径,例如 windows D盘 为 /d/。
挂载GitHub
由plugins/drive.github.js插件实现。用于访问GitHub代码库。有以下两种挂载方式。
挂载标示:github 挂载内容: username username/repo
注意:仅用于浏览,不支持 git clone 等git操作。
挂载蓝奏云
由plugins/drive.lanzou.js插件实现。提供对蓝奏云的访问支持。
挂载标示:lanzou挂载路径: folderId password@folderId
注意:folderId是分享链接中bxxxxxx部分。
插件为 mp4/jpg 等禁止上传的格式提供解析支持,只需在文件名后附加txt后缀即可。以mp4为例,将xxx.mp4命名为xxx.mp4.txt后再上传,插件将自动解析为mp4文件。
挂载h5ai
由drive.h5ai.js插件实现,用于访问h5ai目录程序。
挂载标示:h5ai 挂载路径:http地址
例如: h5ai:https://larsjung.de/h5ai/demo/
挂载WebDAV
由drive.webdav.js插件实现,用于访问WebDAV服务。
挂载标示:webdav 挂载路径: https://webdavserver.com:1222/path https://username:password@webdavserver.com:1222/path https://username:password@webdavserver.com:1222/?acceptRanges=none
注意:若服务端不支持断点续传,需追加acceptRanges=none
虚拟目录
在需创建虚拟目录处新建目录名.d.ln文件。 其内容为挂载标识:挂载路径。
指向本地/root的建虚拟目录
fs:/root
指向GoogleDrive的某个共享文件夹虚拟目录
gd:0BwfTxffUGy_GNF9KQ25Xd0xxxxxxx
系统内置了一种单文件虚拟目录系统,使用yaml构建,以sld作为后缀保存。参考example/ShareListDrive.sld。
虚拟文件
与虚拟目录类似,目标指向具体文件。
在需创建虚拟文件处新建文件名.后缀名.ln文件。 其内容为挂载标识:挂载路径。