WebDAV:修訂版本之間的差異

出自福留子孫
跳轉到: 導覽搜尋
第 60 行: 第 60 行:
  
 
anonymous 登入
 
anonymous 登入
 +
 +
===參考資料===
 +
#[https://evertpot.com/167/ 用PHP實現WebDAV]

2022年12月22日 (四) 16:13的修訂版本

WebDAV 是 web-based distributed authoring and versioning(基於 Web 的分散式登入與版本控制) 的簡稱。它是 HTTP(S) 協定的一種延伸,可讓 Web 伺服器變成一般標準的網路磁碟。在啟用 WebDAV 服務後,你就能透過 HTTP 或 HTTPS 協定連線至 NAS。

WebDAV 定義

WebDAV 是藉由額外定義 HTTP 中的 methods 與 headers 來實現遠端檔案存取上所需的操作與資訊傳遞:

  • The method :描述被顧客端執行的方法。
  • Headers :描述有關工作如何被完成的指令。
  • A body (optional):定義指令用到的資料或有關方法如何被執行的額外指令。

以下是他額外定義的 methods:

  • PROPFIND:檢索遠端系統的集合結構(也叫目錄階層),取得資源的屬性,如查詢檔案的大小、列出目錄下的內容。
  • PROPPATCH:修改、刪除資源的屬性,如調整檔案的 ACL 規則。
  • COPY:將資源從一個位置(URL)複製到另一個位置(URL),用於複製檔案、目錄。
  • LOCK:鎖定資源以供寫入、讀取,支援檔案系統常見的共享鎖與互斥鎖。
  • UNLOCK:移除資源的鎖定。
  • MOVE:移動資源到另一個位置,用於移動檔案、目錄。
  • MKCOL:建立目錄。

WebDAV 協議流程

伺服器啟動 webDAV

用 SRM 上的 File Station 設定 anonymous 資料夾

使用 webDAV

Firefox

  1. 網址列:https://ip:port/資料夾/檔案, port 若使用 http 預設 5005 ;若使用 https 預設 5006
  2. 同 session 的第一次讀取時,會要帳號密碼
    • anonymous 資料夾,輸入帳號 anonymous ,免設密碼。
    • 非 anonymous 資料夾,輸入有權讀取的帳號和密碼。
  3. 和 80 port 以 web 資料夾為根資料夾不同,webDAV 是 web 資料夾的上一層資料夾為網址列的根資料夾。
  4. 這是可以用瀏覽器看 php 原始碼的方法,目前 RT1900ac 是沒有開放任何外 port 可以導向內部的 webDAV 服務。

Windows 10

Windows 10 預設只允許 HTTPS WebDAV 連線,若需使用 HTTP 連線,必須先降低 Windows 10 的 WebClient 安全層級,才能使用 HTTP 連線 WebDAV。

  1. 改登錄 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters]
    [BasicAuthLevel]之值由 1 改 2
  2. [以系統管理員身分執行 cmd]
  3. 執行「net stop webclient」先停止 WebClient 服務。可能會回覆「尚未啟動 WebClient 服務」。
  4. 再執行「net start webclient」,重新啟動 WebClient 服務。
  5. 去檔案總管,找到「本機」,按右鍵並「連線網路磁碟機」
  6. 輸入 協定 / ip / port 如右圖
  7. 輸入有效的使用者帳號及密碼,並點擊「確定」。 anonymous 會過,但無法使用。





  1. smb://ip/資料夾
  2. ftp://ip:21/資料夾
  3. sftp://ip:22
  4. dav://ip:5005/ 或 davs://ip:5006/


Mac 的檔案總管叫「Finder」


anonymous 登入

參考資料

  1. 用PHP實現WebDAV