当前位置: 首页 > news >正文

基于 Ubuntu 24.04 部署 WebDAV

无域名,HTTP


在这里插入图片描述

1. 简介

WebDAV(Web Distributed Authoring and Versioning)是一种基于 HTTP 的协议,允许用户通过网络直接编辑和管理服务器上的文件。本教程介绍如何在 Ubuntu 24.04 上使用 Apache2 搭建 WebDAV 服务,无需域名,仅使用 HTTP(适用于内网或测试环境)。


2. 前提条件

  • Ubuntu 24.04 服务器(物理机/虚拟机/云服务器)
  • SSH 访问权限(或本地终端)
  • root 或 sudo 权限

3. 安装 Apache2 和 WebDAV 模块

更新软件包并安装 Apache2 及 WebDAV 依赖:

sudo apt update
sudo apt install apache2 apache2-utils
sudo a2enmod dav dav_fs

4. 配置 WebDAV 目录

4.1 创建 WebDAV 存储目录

sudo mkdir -p /var/www/webdav
sudo chown -R www-data:www-data /var/www/webdav
sudo chmod -R 775 /var/www/webdav

4.2 创建 WebDAV 用户密码文件

sudo htpasswd -c /etc/apache2/webdav-passwd username

(替换 username 为你的用户名,并输入密码)


5. 配置 Apache WebDAV 虚拟主机

5.1 创建 WebDAV 配置文件

sudo nano /etc/apache2/sites-available/webdav.conf

粘贴以下内容:

<VirtualHost *:80>ServerAdmin admin@localhostDocumentRoot /var/www/webdav<Directory /var/www/webdav>DAV OnOptions Indexes FollowSymLinksAuthType BasicAuthName "WebDAV Restricted"AuthUserFile /etc/apache2/webdav-passwdRequire valid-user</Directory>
</VirtualHost>

保存并退出(Ctrl + XYEnter)。

5.2 启用配置并重启 Apache

sudo a2ensite webdav.conf
sudo systemctl restart apache2

6. 防火墙放行(如启用)

sudo ufw allow 80/tcp
sudo ufw reload

7. 测试 WebDAV 服务

7.1 浏览器访问

访问 http://你的服务器IP,输入用户名和密码,应能看到 /var/www/webdav 目录内容。

7.2 命令行测试

curl -X PROPFIND --user username:password http://服务器IP/

预期输出:

HTTP/1.1 207 Multi-Status
<d:multistatus>...</d:multistatus>

7.3 挂载为本地磁盘(Linux/macOS)

sudo apt install davfs2  # 安装 davfs2(Linux)
sudo mount -t davfs http://服务器IP /mnt/webdav

(输入用户名密码后,文件会挂载到 /mnt/webdav


8. 常见问题排查

问题可能原因解决方案
401 Unauthorized密码错误或未配置认证检查 /etc/apache2/webdav-passwd
403 Forbidden目录权限不足sudo chown -R www-data:www-data /var/www/webdav
500 Server ErrorWebDAV 模块未加载sudo a2enmod dav_fs && systemctl restart apache2
无法连接防火墙阻止 80 端口sudo ufw allow 80/tcp

9. 安全注意事项

⚠️ HTTP 是明文传输,仅适用于内网或测试环境!
如需公网访问,强烈建议启用 HTTPS(可使用 Let’s Encrypt 或自签名证书)。


10. 总结

  • ✅ 已成功在 Ubuntu 24.04 上部署 WebDAV
  • ✅ 支持 HTTP 访问,无需域名
  • ✅ 可通过浏览器、命令行或挂载本地磁盘访问

下一步建议

  • 配置 HTTPS(使用 certbot 申请免费证书)
  • 限制访问 IP(增强安全性)

📌 支持 WebDAV 的软件一览表

类别软件名称用途WebDAV 支持方式适用平台
笔记管理ObsidianMarkdown 笔记管理需插件(如 Remotely Save)Windows/macOS/Linux
Joplin开源 Markdown 笔记原生支持全平台
Notion在线笔记(需第三方工具)通过 rclone/Zapier 间接同步Web/全平台
文件管理CyberduckFTP/SFTP/WebDAV 客户端原生支持Windows/macOS
WinSCPWindows 文件传输工具原生支持Windows
RaiDrive挂载 WebDAV 为本地磁盘原生支持Windows
rclone命令行文件同步工具原生支持Linux/macOS/Win
办公工具LibreOffice开源 Office 套件支持打开/保存 WebDAV 文件全平台
Zotero文献管理软件支持同步附件到 WebDAV全平台
移动端 AppSolid ExplorerAndroid 文件管理器原生支持Android
Documents (Readdle)iOS 文件管理支持 WebDAV 连接iOS
FolderSyncAndroid 自动同步工具支持定时同步到 WebDAVAndroid
开发/备份Git版本控制(需服务器支持)通过 HTTP WebDAV 托管仓库全平台
Duplicati加密备份工具支持备份到 WebDAV全平台

📌 注意事项

  1. 安全性:HTTP 是明文传输,建议内网使用或搭配 HTTPS(如 Let’s Encrypt)。
  2. 兼容性:部分软件(如 Git)需要 WebDAV 服务器支持 PUT/DELETE 方法。
  3. 移动端限制:iOS 需使用支持 WebDAV 的 App(如 Documents)。

相关文章:

  • 【PHP】基于币安链,一个完整的USDT转账示例
  • C语言实现小波变换去噪
  • Go语言的逃逸分析是怎么进行的
  • docker 镜像的导出和导入(导出完整镜像和导出容器快照)
  • Docker存储空间不足与迁移实战:从根目录爆满到高效扩容
  • 在线服务器具体是指什么?
  • 垃圾分类宣教小程序源码介绍
  • Android Framework 记录之一
  • WDG看门狗(独立看门狗和窗口看门狗)
  • 解决SQL Server SQL语句性能问题(9)——正确使用索引
  • 申能集团笔试1
  • Spring Web MVC基础理论和使用
  • 【LUT技术专题】ECLUT代码解读
  • Kubernetes调度策略深度解析:NodeSelector与NodeAffinity的正确打开方式
  • 抓取大站数据与反爬策略
  • CAN总线协议网关模块赋能数据采集器:工业通信升级路径
  • RslRlOnPolicyRunnerCfg 学习
  • Mysql--基础知识点--91.2--processlist
  • 【数据结构】算法的复杂度
  • 【C】初阶数据结构15 -- 计数排序与稳定性分析
  • 总粉丝破亿!当网络大V遇见硬核科技,互联网时代如何书写上海故事?
  • 春秋航空:如果供应链持续改善、油价回落到合理水平,公司补充运力的需求将会增长
  • 洲际酒店:今年第一季度全球酒店平均客房收入同比增长3.3%
  • 硅料巨亏后弘元绿能割肉求生:逾12亿元内蒙古公司股权转让协鑫
  • 中信银行:拟出资100亿元全资设立信银金融资产投资有限公司
  • 4月外汇储备增加410亿美元,黄金储备连续6个月增加