OpenWRT配置Webdav(s)共享文件 By HKL,
时间:2022-07-22
本文章向大家介绍OpenWRT配置Webdav(s)共享文件
By HKL,
,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
本文主要实现在OpenWRT路由器配置Webdav(s)共享文件,主要通过lighttpd
lighttpd版本的webdav可能有些webdav方法不一定支持,需要全功能的webdav可以参考另外一篇用openwrt-apache做的webdav服务器 。
(1)安装相关软件
opkg install lighttpd lighttpd-mod-webdav lighttpd-mod-auth lighttpd-mod-authn_file lighttpd-mod-openssl
(2)配置lighttpd
以下为模板
/etc/lighttpd/lighttpd.conf
server.document-root = "/mnt/sda1/files"
server.upload-dirs = ( "/tmp" )
server.errorlog = "/var/log/lighttpd/error.log"
server.pid-file = "/var/run/lighttpd.pid"
server.username = "http"
server.groupname = "www-data"
index-file.names = ( "index.php", "index.html",
"index.htm", "default.htm",
)
$SERVER["socket"] == "0.0.0.0:443" {
ssl.engine = "enable"
ssl.pemfile = "/mnt/sda1/etc/ca/fullchain.cer"
ssl.privkey= "/mnt/sda1/etc/ca/domain.key"
}
static-file.exclude-extensions = ( ".php", ".pl", ".fcgi" )
### Options that are useful but not always necessary:
#server.chroot = "/"
server.port = 81
#server.bind = "localhost"
#server.tag = "lighttpd"
server.errorlog-use-syslog = "enable"
#server.network-backend = "writev"
### Use IPv6 if available
#include_shell "/usr/share/lighttpd/use-ipv6.pl"
dir-listing.encoding = "utf-8"
server.dir-listing = "enable"
include "/etc/lighttpd/mime.conf"
include "/etc/lighttpd/conf.d/*.conf"
/etc/lighttpd/conf.d/20-auth.conf
#######################################################################
##
## Authentication Module
## -----------------------
##
## See https://redmine.lighttpd.net/projects/lighttpd/wiki/docs_modauth
## for more info.
##
server.modules += ( "mod_auth" )
auth.backend = "plain"
auth.backend.plain.userfile = "/mnt/sda1/etc/webdav/lighttpd.user"
#auth.backend.plain.groupfile = "/etc/lighttpd/lighttpd.group"
#auth.backend.ldap.hostname = "localhost"
#auth.backend.ldap.base-dn = "dc=my-domain,dc=com"
#auth.backend.ldap.filter = "(uid=$)"
auth.require = ( "/" =>
(
"method" => "basic",
"realm" => "Webdav Server",
"require" => "valid-user"
),
)
##
#######################################################################
lighttpd.user为明文用户名密码形式:
admin1:password1
admin2:password2
/etc/lighttpd/conf.d/20-auth.conf
#######################################################################
##
## WebDAV Module
## ---------------
##
## See https://redmine.lighttpd.net/projects/lighttpd/wiki/Docs_ModWebDAV
##
server.modules += ( "mod_webdav" )
#$HTTP["url"] =~ "^/dav($|/)" {
##
## enable webdav for this location
##
webdav.activate = "enable"
##
## By default the webdav url is writable.
## Uncomment the following line if you want to make it readonly.
##
#webdav.is-readonly = "enable"
##
## Log the XML Request bodies for debugging
##
#webdav.log-xml = "disable"
##
##
##
webdav.sqlite-db-name = "/mnt/sda1/etc/webdav/webdav.db"
#}
##
#######################################################################
启用全局Webdav,因此注释了原始文件的站点配置
(3)启用
/etc/init.d/lighttpd enable
/etc/init.d/lighttpd start
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- c/c++补完计划(六): 语法糖lambda
- 从别人的代码中学习golang系列--03
- Flink写出数据到HBase的Sink实现
- 「MoreThanJava」Day 4:面向对象基础
- RTSP协议视频平台EasyNVR接入EasyNVS通道不显示任何数据怎么处理?
- RTSP协议视频平台EasyNVR接入视频综合管理平台EasyNVS可以自由修改配置吗?
- 使用Azure人脸API对图片进行人脸识别
- 视频综合管理平台EasyNVS显示的rtsp和rtmp穿透地址错误如何解决?
- 开发RTSP协议视频平台EasyNVR采用ffmpeg集成fdk-aac报no member named “encoderDelay”
- 微信小程序开发实战(17):用画布画一张笑脸
- PHP中Session ID的实现原理分析和实例解析
- 【好文推荐】黑莓OS手册是如何详细阐述底层的进程和线程模型的?
- 简析Spark Streaming/Flink的Kafka动态感知
- 微信小程序开发实战(19):页面导航
- Kotlin:02-函数的声明