基于Nginx搭建WebDAV服務的詳細過程
title: 基于Nginx搭建WebDAV服務
categories:
- [IT,網(wǎng)絡,服務]
tags:
- WebDAV
- Nginx
comments: true
date: 2022-11-09 17:19:46
description:
基于Nginx搭建WebDAV服務
在搭建 Joplin 筆記服務的時候,發(fā)現(xiàn)了可以通過 WebDAV 服務來實現(xiàn)云筆記的功能,所以本篇就來介紹一下,怎么快速搭建 WebDAV 服務。
WebDAV (Web-based Distributed Authoring and Versioning) 一種基于 HTTP 1.1協(xié)議的通信協(xié)議。它擴展了HTTP 1.1,在GET、POST、HEAD等幾個HTTP標準方法以外添加了一些新的方法,使應用程序可對[Web Server](https://baike.baidu.com/item/Web Server/9306055?fromModule=lemma_inlink)直接讀寫,并支持寫文件鎖定(Locking)及解鎖(Unlock),還可以支持文件的版本控制。
從我的角度,簡單地理解為,類似于FTP服務,提供網(wǎng)絡文件交互服務??梢允褂糜脩裘兔艽a來控制訪問,通過特定的客戶端,可以直接存儲、下載、編輯文件。
搭建與配置
這里我是用寶塔面板來實現(xiàn)整個過程的,知曉原理后,也可以用其他類似的手段實現(xiàn)。
官方安裝示例 [Nginx http_dav_module](Module ngx_http_dav_module (nginx.org))
重新安裝 Nginx
在寶塔面板,Nginx 安裝中選擇 編譯安裝,并點擊 添加自定義模塊。
添加自定義模塊
模塊名稱:http_dav_module 模塊描述:webdev 模塊參數(shù):--with-http_dav_module --add-module=/root/nginx-dav-ext-module 前置腳本:git clone https://github.com/arut/nginx-dav-ext-module.git /root/nginx-dav-ext-module
標準的 ngx_http_dav_module 提供了部分WebDAV實現(xiàn),僅支持GET、HEAD、PUT、DELETE、MKCOL、COPY和MOVE方法。要在 Nginx 中獲得完整的 WebDAV 支持,您需要啟用 ngx_http_dav_module 以及此模塊(nginx-dav-ext-module)以補充缺少的方法,如:PROPFIND,OPTIONS,LOCK,UNLOCK。
部署 WebDAV 網(wǎng)站服務
添加一個新網(wǎng)站
在配置文件中添加以下內(nèi)容(別忘了還要添加第二行代碼,就在server
上面添加):
http { dav_ext_lock_zone zone=foo:1m; # 默認鎖超時值為 1 分鐘 ... server { ... location / { root /www/wwwroot/webdav; client_body_temp_path /www/wwwroot/webdav/client_temp; #client_max_body_size 102400M;#大文件支持 dav_methods PUT DELETE MKCOL COPY MOVE; create_full_put_path on; dav_access user:rw group:rw all:r; autoindex on; # 需要 nginx-dav-ext-module 才有下面的選項 dav_ext_methods PROPFIND OPTIONS LOCK UNLOCK; dav_ext_lock zone=foo; } } }
在 網(wǎng)站目錄 加入密碼保護即可
應用
接下來,就可以在需要 WebDAV 服務的地方使用了。
比如:Joplin
WebDAV URL:就是你訪問那個 WebDAV 網(wǎng)站的地址
用戶名和密碼:就是剛才設置的密碼訪問
到此這篇關于基于Nginx搭建WebDAV服務的文章就介紹到這了,更多相關Nginx搭建WebDAV服務內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
Nginx access.log日志詳解及統(tǒng)計分析小結(jié)
nginx有一個非常靈活的日志記錄模式,本文主要介紹了Nginx access.log日志詳解及統(tǒng)計分析小結(jié),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧2024-03-03nginx 502、413和404錯誤原因排查和解決辦法總結(jié)
這篇文章主要給大家介紹了NGINX 502錯誤排查,辦法總結(jié),Nginx 413錯誤的排查以及Nginx 400錯誤排查,文中通過代碼示例給出了詳細的排查方法和解決方案,需要的朋友可以參考下2023-12-12nginx代理實現(xiàn)靜態(tài)資源訪問的示例代碼
本文主要介紹了nginx代理實現(xiàn)靜態(tài)資源訪問的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2022-06-06Nginx、Apache、Lighttpd禁止目錄執(zhí)行php配置示例
這篇文章主要介紹了Nginx、Apache、Lighttpd禁止目錄執(zhí)行php配置示例,本文給出了單個目錄、多個目錄的禁止執(zhí)行PHP的方法,需要的朋友可以參考下2014-09-09centos環(huán)境下nginx高可用集群的搭建指南
為了防止Nginx單點故障造成服務器癱瘓,本文介紹了Nginx實現(xiàn)高可用集群構(gòu)建,下面這篇文章主要給大家介紹了關于centos環(huán)境下nginx高可用集群的搭建指南,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下2022-07-07阿里云國際版使用Nginx作為HTTPS轉(zhuǎn)發(fā)代理服務器的處理方法
本文介紹了使用NGINX作為HTTPS流量轉(zhuǎn)發(fā)代理的兩種方法。它總結(jié)了NGINX使用HTTP?CONNECT隧道和NGINX流充當HTTPS轉(zhuǎn)發(fā)代理的解決方案的原則,環(huán)境構(gòu)建要求,應用場景和關鍵問題2022-05-05