Windows Server 2022 创建WebDAV共享

# Windows Server 2022 创建WebDAV共享（目录 F:\本地知识库）完整步骤
## 一、安装IIS + WebDAV角色功能
1. 打开 **服务器管理器 → 添加角色和功能**
2. 角色页面勾选：**Web服务器(IIS)**，一路下一步
3. 在「Web服务器角色服务」里额外勾选：
   - 常见HTTP功能：全部默认
   - **WebDAV发布**（核心，必须勾选）
4. 下一步完成安装，等待组件部署完毕。
## 二、IIS中新建网站，绑定F:\本地知识库
1. 打开 **Internet 信息服务(IIS)管理器**
2. 左侧「网站」右键 → **添加网站**
   - 网站名称：`KnowledgeWebDAV`（自定义）
   - 物理路径：`F:\本地知识库`
   - IP地址：选服务器内网固定IP（如192.168.0.83）
   - 端口：8080（避免占用80，和你RAGFlow配置一致）
   - 主机名：留空 → 确定创建
## 三、启用WebDAV功能（关键步骤）
1. 左侧选中刚创建的 `KnowledgeWebDAV` 网站
2. 中间功能列表双击 **WebDAV授权规则**
3. 右侧点击 **启用WebDAV**
### 配置WebDAV访问权限
1. 右侧「添加允许规则」
   - 允许访问：**指定用户**（填写域账号 `shuncom\7004`，或本地账号）
   - 权限：勾选 **读取、写入**
2. 若需要只读给RAGFlow，仅勾选「读取」即可。
## 四、关闭匿名访问，强制账号密码登录
1. 网站主页双击 **身份验证**
2. 右键 **匿名身份验证 → 禁用**
3. 确保 **基本身份验证** 状态为「已启用」
> 注意：WebDAV Linux客户端普遍只兼容「基本身份验证」，不要用Windows身份验证。
## 五、设置目录浏览（可选，方便Windows客户端访问）
1. 双击「目录浏览」→ 右侧启用，打开文件夹列表展示。
## 六、Windows防火墙放行8080端口
1. 高级防火墙 → 入站规则 → 新建规则
2. 端口 → TCP 8080
3. 允许连接，域/专用/公网全勾选
4. 名称：WebDAV-8080，完成。
## 七、权限兜底：F:\本地知识库 NTFS权限
1. 右键 `F:\本地知识库` → 属性 → 安全
2. 添加账号 `shuncom\7004`，赋予：
   - 读取 & 执行
   - 列出文件夹内容
   - 读取
3. 高级 → 勾选「替换子容器和对象的权限项」应用到全部子文件。
## 八、RAGFlow WebDAV参数对应填写
1. WebDAV Server URL：`http://192.168.0.83:8080`
2. Username：`shuncom\7004`
3. Password：账号对应密码
4. Remote Path：`/`
> 物理路径直接绑定F:\本地知识库，远端根路径填写 `/` 即可，无需额外目录。
## 九、测试连通（先在Windows测试，再Linux服务器测试）
### Windows资源管理器
地址栏输入：
```
http://192.168.0.83:8080
```
弹出账号框输入 `shuncom\7004` + 密码，能看到文件夹内所有文档即正常。
### Ubuntu RAGFlow服务器测试连通性
```bash
# 测试WebDAV接口连通
curl http://192.168.0.83:8080 --user shuncom\7004:你的密码
```
能返回目录列表HTML代表服务正常，不会出现同步total=0的问题。
## 常见踩坑
1. 同步扫描文件为0：
   - 禁用匿名访问、开启基本身份验证；
   - URL不要用`.local`域名，直接写服务器内网IP；
   - Remote Path 填写 `/`，不要多写层级。
2. Linux挂载/访问401权限拒绝：
   - WebDAV授权规则未添加对应账号；
   - NTFS文件夹缺少读取权限；
   - 仅启用Windows身份验证，未开基本验证。
3. 端口不通：防火墙未放行TCP 8080入站规则。