Centos7中搭建WebDav的服务

一 什么是WebDAV

百度百科的定义:WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。
顾名思义,WebDAV主要就是用来做文档的存储的。

二 使用背景

因为为了方便手写笔记,在apple应用市场花了60RMB刚购买了Notability,虽然该应用支持iCloud存储,但是由于个人的iCloud存储基本都已经满了,担心后面ipad出问题,所有笔记都会丢失。
虽然,Notability还支持一些其他存储,如GoogleDriver,但是几乎都是国内无法访问的,然后看到有WebDAV选项,即把自己的东西存到服务器上,所以就到github找了一下,果然找到一个golang版本的WebDAV server。

三 部署流程

项目在Github上的地址:https://github.com/hacdias/webdav
服务器操作系统:Centos7

下载并解压指定目录

cd /usr/local/webdav
wget https://github.com/hacdias/webdav/releases/download/v4.0.0/linux-amd64-webdav.tar.gz
tar -xvzf linux-amd64-webdav.tar.gz
rm -rf linux-amd64-webdav.tar.gz

在webdav同级目录下增加config.yaml

mkdir -p /data/webdav

cat << EOF > /user/local/webdav/config.yaml
# Server related settings
address: 0.0.0.0
port: 51234
auth: true
tls: false
cert: cert.pem
key: key.pem

# Default user settings (will be merged)
scope: .
modify: true
rules: []

users:
  - username: admin
    password: admin
    scope: /data/webdav
EOF

增加systemd服务

cat << EOF > /usr/lib/systemd/system/webdav.service
[Unit]
Description=WebDAV server
After=network.target

[Service]
Type=simple
User=root
ExecStart=/usr/local/webdav/webdav --config /usr/local/webdav/config.yaml
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

systemctl daemon-reload
systemctl enable webdav
systemctl start webdav

查看服务状态

# systemctl status webdav
● webdav.service - WebDAV server
   Loaded: loaded (/usr/lib/systemd/system/webdav.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2021-04-29 17:34:08 CST; 20h ago
 Main PID: 10032 (webdav)
   CGroup: /system.slice/webdav.service
           └─10032 /usr/local/webdav/webdav --config /usr/local/webdav/config.yaml

文章来源:https://www.cnaaa.net,转载请注明出处:https://www.cnaaa.net/archives/7577

赞 (0)
郭靖的头像郭靖
上一篇 2023年3月9日 下午4:26
下一篇 2023年3月10日 下午4:44

相关推荐

  • Linux系统之nethogs命令

    1.简介 NetHogs是一个小型的net top工具,不像大多数工具那样拖慢每个协议或者是每个子网的速度而是依照进程进行带宽分组。 NetHogs不需要依赖载入某个特殊的内核模块。 假如发生了网络堵塞你能够使用NetHogs立即看到哪个PID形成的这种情况。 这样就很容易找出哪个程序突然长时间占用你的带宽。 NetHogs是一个类似于Linux的top指令…

    2023年9月19日
    1.5K00
  • Linux如何调整Swap空间大小

    查看当前Swap文件位置以及大小 要查看当前正在使用的swap文件或分区的位置,您可以使用swapon命令。 执行以下命令: 这将显示所有活动的swap空间,包括其类型(例如文件或分区)、大小、使用情况和位置。 如果您只对文件路径或分区路径感兴趣,您可以通过/proc/swaps文件查看相同的信息: 这将列出系统上所有的swap空间,包括它们的位置。 设置一…

    2023年11月6日
    1.6K00
  • 微信扫码登录的技术实现思考

    简介: 微信扫码登录是很常见的技术,曾经在一次面试当中,面试官就曾问过微信扫码登录的实现思路,这次,以微信读书网页版扫码登录为例子,聊聊我对它技术实现思路一些思考。 微信扫码登录是很常见的技术,曾经在一次面试当中,面试官就曾问过微信扫码登录的实现思路,这次,以微信读书网页版扫码登录为例子,聊聊我对它技术实现思路一些思考。 以谷歌浏览器来做分析,打开F12,准…

    2023年11月10日
    1.6K00
  • Linux系统管理本地 Linux 用户和组

    Linux的用户UID 系统中的每个进程(运行程序)都作为一个特定用户运行。每个文件归一个特定用户所有。对文件和目录的访问受到用户的限制。与运行进程相关联的用户可确定该进程可访问的文件和目录。 用户的分类 root用户 用户系统中唯一,权限最大,可以操作任意命令 普通用户 权限较低,只能编辑自己的用户家目录,由root账户创建 虚拟用户 没有登录系统的权限,…

    2022年6月11日
    1.8K00
  • Linux下安装配置maven仓库

    1、安装wget命令 如果需要通过使用wget命令,直接通过网络下载maven安装包时,需要在linux系统中安装wget命令。 2、下载maven安装包 在/usr/local/下创建一个maven文件: mkdir /usr/local/maven 切换到安装目录,即新建的文件中: 下载安装: 3、解压缩maven 4、配置maven环境变量 添加环境变…

    2022年6月20日
    2.5K00

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

在线咨询: QQ交谈

邮件:712342017@qq.com

工作时间:周一至周五,8:30-17:30,节假日休息

关注微信
Centos7中搭建WebDav的服务