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

相关推荐

  • 800 多个 Kubectl 常用命令,再也不怕不会用 Kubernetes!

    这个存储库包含脚本 gener_ aliases.py 可以生成数百个方便的 kubectl shell 别名,您不再需要拼写出每个命令和–flag 参数。 通过命令/标志排列创建的 shell 别名示例如下: 示例 800 个别名,下面列出一部分: 访问下面地址,查看所有别名: 安装 您可以直接下载 bash/zsh 的文件…

    2023年7月26日
    1.1K00
  • NetSet – 自动化网络流量安全增强工具

    NetSet旨在自动执行多个操作,以帮助用户保护网络流量。它还提供了一种通过Tor收集代理和运行实用程序的简便方法。NetSet安装和使用的也是自动配置,该工具主要用于辅助性网络安全任务。 实现了一种按需使用的终端多路复用器,它的会话通过Tor路由网关。通过自动安装和配置DNSCrypt-proxy来保护DNS流量。Tor Wall功能强制所有流量通过Tor…

    2023年10月8日
    1.5K00
  • CentOS安装noVNC,以Web方式交付VNC远程连接

    什么是noVNC noVNC 是一个 HTML5 VNC 客户端,采用 HTML 5 WebSockets, Canvas 和 JavaScript 实现,noVNC 被普遍用在各大云计算、虚拟机控制面板中,比如 OpenStack Dashboard 和 OpenNebula Sunstone 都用的是 noVNC。 noVNC 采用 WebSockets…

    2024年5月8日
    1.4K00
  • Linux操作系统中软件安装:用RPM包管理器安装软件步骤

    安装软件的一般步骤如下:1.打开终端,作为root用户或使用sudo命令获取管理员权限。2.使用RPM命令进行软件包的安装。例如,使用“rpm -ivh 软件包名称.rpm”命令来安装软件包,其中“-i”表示安装,“-v”表示显示详细安装信息,“-h”表示以适当的哈希标记显示安装进度。常用命令如下: 示例: 常用参数:

    2023年11月8日
    1.1K00
  • /etc/security/limits.conf配置文件详解

    /etc/security/limits.conf 是一个用于配置用户或用户组资源限制的配置文件。这个文件通常用于设置系统资源的软限制和硬限制,以及一些特殊权限。 一. limits.conf常见配置项详解 下面是一些 /etc/security/limits.conf 文件中可能包含的常见配置项: 描述 第一列表示用户和组(@开头),这里的 * 代表所有用…

    2024年5月14日
    1.2K00

发表回复

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

在线咨询: QQ交谈

邮件:712342017@qq.com

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

关注微信