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

相关推荐

  • Docker Dockerfile 使用方法

    Dockerfile 介绍当使用Docker构建容器化应用程序时,Dockerfile是一个用于定义容器镜像的文本文件。它包含了一系列指令,告诉Docker如何从基础镜像(通常是官方或自定义的操作系统镜像)构建出最终的镜像,以及如何配置容器中的环境、文件和应用程序。 Dockerfile 的编写是构建容器的基础,它允许您定义容器的构建步骤、环境和配置。通过合…

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

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

    2022年6月11日
    1.6K00
  • Centos7忘记root密码怎么办

    重启linux,进入系统的GRUB菜单界面,选择最下方的,按下小写字母e进入编辑界面 按下方向键,找到以字符串Linux16开头的行,光标移动到结尾,然后输入init=/bin/bash enforcing=0 代表登录系统后,加载bash解释器,然后关闭selinux 按下ctrl+x组合键以单用户模式启动Linux 输入如下命令,重新挂载根目录,进入可写…

    2022年6月11日
    1.7K00
  • 安装linux/Centos系统出现An Unknown Error Has Occurred报错原因和解决方法

    今天在给一个客户重装系统的时候出现: An Unknown Error Has OccurredThis program has encountered an unknown error. You may report the buy below or quit the program. This program has encountered an unk…

    2024年3月25日
    2.0K00
  • Linux系统下配置双网卡只能ping通一个解决方案

    解决办法:第一步:找到两块网卡名称,再执行关闭反向路由检查(命令中第二及第三项根据实际网卡名来替换) 第二步:配置完之后你会发现双IP都能ping通了,但如服务器重启后将会默认开启,所以还要执行下一步骤来防止每次开机自动关闭反向路由检查,将以上命令加入 /etc/rc.local 即可。 其他:如涉及到此文件权限可以给/etc/rc.local文件添加执行权…

    2023年5月5日
    2.6K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信