- 注册
- 2024/07/26
- 消息
- 732
参考文章:
rei3.com
为Filen添加WebDAV支持 - 技术宅银魂 - 科技改变生活 - 万事屋 4
Filen本身并不支持通过WebDAV访问文件,只能通过网页或者APP访问文件。要通过WebDAV访问Filen,显然是需要我们自己写服务端的。不过,Filen官方为我们提供了一个Node.js库,可以很方便地实现WebDAV服务端。 首先,登录服务器/VPS系统,创建一个文件夹,作为存放WebDAV服务端文件的地方。 然后,进入该文件夹,执行命令:npm install @filen/webdagithub.com
GitHub - FilenCloudDienste/filen-webdav: A package to start a WebDAV server for a single or... 3
A package to start a WebDAV server for a single or multiple Filen accounts1.开放一个端口并开启应用权限
2. 将域名托管到serv00并创建Website
将serv00的IP解析到CF创建Website
3. 下载filen-webdav
进入 public_html 文件下cd /usr/home/你的serv名字/domains/域名/public_html
安装filen-webdav
npm install @filen/webdav@latest
4.在public_html目录创建start.js文本
start.js文本import WebDAVServer from "@filen/webdav"
//WebDAV主机名,如果需要禁止外网访问,请改成127.0.0.1
const hostname = "0.0.0.0"
//WebDAV端口,可改成其他端口
const port = 8888
//是否使用https,暂时不知道怎么配置证书,所以这里禁用了https
const https = false
const server = new WebDAVServer.default({
hostname,
port,
https,
authMode: "basic"
});
server
.start()
.then(() =>
console.log(`WebDAV 服务端正运行在 ${https ? "https" : "http"}://${hostname === "0.0.0.0" ? "local.webdav.filen.io" : hostname}:${port}`)
)
.catch(console.error)
修改8888端口为你自己的
5.创建保活脚本
在public_html目录创建restart.sh文本#!/bin/bash
# 设置脚本路径
SCRIPT_PATH="/usr/home/serv00名字/domains/域名/public_html/start.js"
WORK_DIR="/usr/home/serv00名字/domains/域名/public_html/public_html"
PORT=你的端口
# 检查端口是否被占用
if ! sockstat -4 -l | grep -q ":$PORT"
then
# 如果端口没有被占用,则重新启动脚本
cd "$WORK_DIR"
nohup node start.js > output.log 2>&1 &
echo "Restarted start.js at $(date)" >> "$WORK_DIR/restart_log.txt"
fi
6.添加限制规则
在public_html目录创建.htaccess文本Options -Indexes
Order Deny,Allow
Deny from all
7.赋权并运行retart.sh
chmod +x /usr/home/serv00名字/domains/域名/public_html/restart.sh
./retart.sh
将restart.sh绝对路径放入CF即可稳定运行
8.将filen接入Alist
填入你的域名,邮箱
密码填写格式为
password=你的密码
password=前缀要加上
加入2FA我没成功,会的佬分享一下,这是官方二验的配置
password=yoursecretpassword&twoFactorAuthentication=<RECOVERY_CODE_OR_6_DIGIT_OTP_CODE>
大功告成