A simple and standalone WebDAV server.
Find a file
Henrique Dias a037fe877c docs: update license file
License: MIT
Signed-off-by: Henrique Dias <hacdias@gmail.com>
2019-05-12 13:48:03 +01:00
.circleci feat: docker images 2019-05-12 13:46:39 +01:00
cmd/webdav feat: docker images 2019-05-12 13:46:39 +01:00
.goreleaser.yml feat: docker images 2019-05-12 13:46:39 +01:00
Dockerfile feat: docker images 2019-05-12 13:46:39 +01:00
go.mod feat: update modules 2019-05-12 12:39:57 +01:00
go.sum feat: update modules 2019-05-12 12:39:57 +01:00
LICENSE docs: update license file 2019-05-12 13:48:03 +01:00
readme.md Add support for loading username and password from environment 2018-12-30 13:26:12 +01:00
webdav.go fix: set depth header 2019-05-12 12:49:55 +01:00
webdav.service.example Adds a Systemd service unit 2018-04-08 12:48:53 +02:00

webdav

Build Go Report Card

webdav is a simple tool that creates a WebDAV server for you. By default, it runs on a random free port and supports JSON and YAML configuration. Here is a simple YAML configuration example:

scope: /path/to/files
address: 0.0.0.0
port: 8080
tls: false
cert: cert.pem
key: key.pem
users:
  - username: admin
    password: admin
  - username: encrypted
    password: "{bcrypt}$2y$10$zEP6oofmXFeHaeMfBNLnP.DO8m.H.Mwhd24/TOX2MWLxAExXi4qgi"
  - username: "{env}ENV_USERNAME"
    password: "{env}ENV_PASSWORD"
  - username: basic
    password: basic
    modify:   false
    rules:
      - regex: false
      - allow: false
      - path: /some/file

You can specify the path to the configuration file using the --config flag. By default, it will search for a config.{yaml,json} file on your current working directory.

An example of how to use this with systemd is on webdav.service.example.

Download it here.