分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 运营维护

nginx实战(二) ?WebDAV 模块 http_dav_module

发布时间:2023-09-06 02:18责任编辑:彭小芳关键词:Webnginxhttp
前言

WebDAV (Web-based Distributed Authoring and Versioning) 一种基于 HTTP 1.1协议的通信协议。它扩展了HTTP 1.1,在GET、POST、HEAD等几个HTTP标准方法以外添加了一些新的方法,使应用程序可直接对Web Server直接读写,并支持写文件锁定(Locking)及解锁(Unlock),还可以支持文件的版本控制。nginx 编译时通过加入“–with-http_dav_module”可以启用对WebDav协议的支持。

WebDAV 工作组的目标是,设计一个协议,它提供基于万维网的分布式创作和版本控制。 当前的 WebDAV 规范 (IETF RFC 2518) 解决协作式创作工具的三个主要问题:

**改写保护** HTTP 1.1 无法确保客户端可以保护资源,并且可以在其他客户端同时编辑它们的情况下进行更改。 使用 WebDAV,可以通过多种方式来锁定资源,以便让其他客户端知道您对所讨论的资源感兴趣,或者防止其他客户端访问该资源。**资源管理** HTTP 只能直接访问单个资源。 WebDAV 提供一种更有效地组织数据的方法。 WebDAV 引入了可包含资源的集合(类似于文件系统文件夹)概念。 通过 WebDAV 进行的资源管理包括如下功能:创建、移动、复制和删除集合,以及集合中的资源或文件。**文档属性** 不同类型的数据具有唯一的属性,这有助于描述数据。 例如,在电子邮件中,这些属性可能是发件人的姓名和接收邮件的时间。 在协作文档中,这些属性可能是文档原始作者的姓名和最后一个编辑者的姓名。 因为人们使用的文档类型各不相同,所以可能的属性类型列表也变得无限大。 XML 是 WebDAV 所需的一种可扩展通讯工具。 ???(摘自百度百科 https://baike.baidu.com/item/WebDAV)

编译

nginx 环境搭建见前文 ?http://blog.51cto.com/13673090/2300319, 此处只写webdav 模块

yum -y install expat-devel httpd-toolsgit clone https://github.com/arut/nginx-dav-ext-module.gitcd openresty./configure --with-http_dav_module --add-module=../nginx-dav-ext-module ?

配置

cd conf/conf.dcat > webdav.conf <<EOFserver { ???listen ??????8080; ???#server_name ?dav.savorof.org; ???access_log ?logs/webdav.access.log ?main; ???location / { ???????root ???/var/www/soft/program; ???????autoindex on; ???????dav_methods PUT DELETE MKCOL COPY MOVE; ???????dav_ext_methods PROPFIND OPTIONS; ???????create_full_put_path ?on; ???????dav_access user:rw group:r all:r; ???????auth_basic "Authorized Users Only"; ???????auth_basic_user_file /var/www/soft/.htpasswd; ???}}EOFhtpasswd -c /opt/soft/.htpasswd dav

win10映射网络驱动

因WebDAV未使用HTTPS协议,Win10是无法通过映射网络驱动器的方法进行挂载的。解决方法如下:
1、修改注册表:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters,把BasicAuthLevel 值改成2,即同时支持http和https,默认只支持https,
2、然后重启服务:
net stop webclient
net start webclient

1、打开我的电脑=>点计算机=>点映射网络驱动器

2、在文件夹位置填写webdav 服务的访问地址

3、连接上后,会让你输入账号密码

4、点击完成就连接成功了

Centos 7 映射网络驱动

yum -y install davfs2mkdir /mnt/testmount -t davfs http://xxx.xxx.xxx:8080/ /mnt/test/

mac os 映射网络驱动

在 Mac 上的“访达” 中,选取“前往”>“连接服务器”,在“服务器地址”栏中输入服务器的地址,然后点按“连接”。

webdav 客户端 for win

根据自己的测试,windows下还是专用的客户端比较稳定,我测试的是cyberduck 。
下载地址 https://cyberduck.io/

配置参数说明

官网 http://nginx.org/en/docs/http/ngx_http_dav_module.html
中文翻译 https://blog.lyz810.com/article/2016/05/ngx_http_dav_module_doc_zh-cn/

感谢百度,让我不断获取知识

nginx实战(二) ?WebDAV 模块 http_dav_module

原文地址:http://blog.51cto.com/13673090/2301488

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved