Mac Apache WebDav 服務器配置

<head> <meta http-equiv="refresh" content="0; url=https://blog.qianchia.com/articles/38bc1f8f.html"> </head>html

<br/ ><br />web

<p> <a href="https://blog.qianchia.com/articles/38bc1f8f.html" style="color: red; font-size: 20px; margin-top: 50px;">本文已中止更新,點擊<text style="color: blue;">此連接</text>查看本文最新內容 !!! </a> </p> <br/ ><br />apache

一、WebDav 服務器

  • 基於 http 協議的 "文件" 服務器。vim

  • 實現文件的上傳/下載/修改/刪除。安全

  • WebDav 權限服務器

    • 受權信息的格式 BASIC (用戶名:口令)base64
    • 安全性並不高,密碼很容易被攔截和破解。
  • 應用場景:開發企業級的管理系統,能夠用 WebDav 搭建一個內部的文件管理服務器,只是在公司內網使用。網絡

二、配置準備工做

  • 1)配置服務器的工做工具

    • 修改了兩個配置文件。
    • 建立 web 訪問用戶的用戶名和口令。
    • 建立了兩個目錄,而且設置管理權限。
  • 2)配置服務器注意事項測試

    • 關閉中文輸入法。
    • 命令和參數之間須要有 "空格"。
    • 修改系統文件必定記住 "sudo",不然會沒有權限。
  • 3)示例配置環境ui

    • macOS 10.11.6
    • macOS 10.13.3
  • 4)WebDav 服務器配置腳本文件

三、配置服務器

  • 打開終端,按照下面的操做開始配置,$ 開頭的,能夠直接拷貝,可是不要拷貝 $

    # 切換工做目錄
    $ cd /etc/apache2
    
    # 備份文件,以防不測,只須要執行一次就能夠了,格式 cp (copy 的縮寫) (源文件) (目標文件)
    # 若是後續操做出現錯誤,可使用如下命令恢復  $ sudo cp httpd.conf.bak httpd.conf
    $ sudo cp httpd.conf httpd.conf.bak
    
    # 用 vim 打開 httpd.conf 文件(sudo 操做須要輸入系統密碼)
    $ sudo vim httpd.conf
    
    # 查找 httpd-dav.conf,命令模式下輸入 /(查找內容),區分大小寫,回車跳轉到查找的內容處
    /httpd-dav.conf
    
    # 將光標移動到 #Include /private/etc/apache2/extra/httpd-dav.conf 行首
    # 命令模式下直接按鍵盤上的 0 鍵
    0
    
      #Include /private/etc/apache2/extra/httpd-dav.conf
    
    # 刪除行首註釋 #,命令模式下直接按鍵盤上的 x 鍵
    x
    
      Include /private/etc/apache2/extra/httpd-dav.conf
    
    # 注意:在 macOS 10.10+ 配置時還須要在 httpd.conf 中一樣打開如下三個模塊
    
      LoadModule dav_module libexec/apache2/mod_dav.so
      LoadModule dav_fs_module libexec/apache2/mod_dav_fs.so
      LoadModule auth_digest_module libexec/apache2/mod_auth_digest.so
    
    # 保存並退出,命令模式下輸入 :wq ,不保存退出爲 :q!
    :wq
    
    # 切換工做目錄
    $ cd /etc/apache2/extra
    
    # 備份文件(只要備份一次就行)
    $ sudo cp httpd-dav.conf httpd-dav.conf.bak
    
    # 用 vim 打開 httpd-dav.conf 文件(sudo 操做須要輸入系統密碼)
    $ sudo vim httpd-dav.conf
    
    # 查找 Digest,命令模式下輸入 /(查找內容),區分大小寫,回車跳轉到查找的內容處
    /Digest
    
      AuthType Digest   
    
    # 進入編輯模式,命令模式下直接按鍵盤上的 i 鍵
    i
    
    # 將 Digest 修改成 Basic
    
      AuthType Basic
    
    # 返回到命令行模式,編輯模式下直接按鍵盤上的 esc 鍵
    esc
    
    # 保存並退出,命令模式下輸入 :wq ,不保存退出爲 :q!
    :wq
    
    # 切換工做目錄,切換保存 WebDav 服務器配置腳本文件的目錄
    $ cd (保存 put 腳本的目錄)
    
    # 以管理員權限運行 put 配置腳本(對於 macOS 10.11+ 用戶,須要關閉 SIP 安全設置)
    $ sudo ./put
    
    # 輸入系統密碼
    (當前用戶開機密碼)
    
    # 設置兩次 WebDav 密碼
    adminpasswd(密碼隨便設置)
    
    # 若是出現如下提示,表示配置完成
    
      drwxr-xr-x	2 _www  _www   68  3 30 11:50 uploads
      -rw-r--r--	1 root  _www   44  3 30 11:50 user.passwd
      drwxr-xr-x	2 _www  _www   68  3 30 11:50 var
    
    # 設置的用戶名爲:admin,密碼爲:adminpasswd(上面兩次輸入的 WebDav 密碼)
    
    # 打開 Finder,在 Finder 的菜單中依次選擇 前往 => 連結服務器(command + k)
    # 在彈出的對話框的服務器地址欄中輸入服務器地址
    # 如      http://127.0.0.1/uploads
    # 或者輸入 http://localhost/uploads
    # 或者輸入 http://本機 IP 地址/uploads 進行測試,
    # 輸入用戶名:admin,密碼:adminpasswd 進行鏈接,
    # 可以打開 uploads 文件夾表示配置成功。
  • WebDav 服務器配置腳本文件 put 內容

    # 切換目錄
    $ cd /usr
    
    # 設置用戶 admin 的密碼
    $ htpasswd -c /usr/user.passwd admin
    
    # 設置密碼文件的訪問羣組
    $ chgrp www /usr/user.passwd
    
    # 創建 var 文件夾,保存 DavLockDB 相關文件
    $ mkdir -p /usr/var
    
    # 修改 var 文件夾用戶羣組
    $ chown -R www:www /usr/var
    
    # 創建上傳文件夾:uploads
    $ mkdir -p /usr/uploads
    
    # 修改 uploads 文件夾用戶羣組
    $ chown -R www:www /usr/uploads
    
    # 確認
    $ ls -lG
    
    # 從新啓動 Apache
    $ apachectl -k res

四、常見問題

  • 1)mac root 用戶 在 usr 目錄下沒有寫權限

    • 對於 macOS 10.11+ 用戶,因爲系統啓用了 SIP(System Integrity Protection), 致使 root 用戶也沒有權限修改 /usr 目錄。

    • 解決方法見 macOS SIP 權限設置

  • 2)Windows 電腦鏈接 Mac 電腦建立的 WebDav

    • 修改註冊表

      • 在 「系統菜單」 => 「運行」 中輸入 regedit,打開「註冊表」。
      • 在如下路徑中 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters 把 BasicAuthLevel 值改爲 2,即同時支持 http 和 https,默認只支持 https。
    • 重啓 webclient 服務

      • 在「命令提示符」中輸入如下命令,重啓 webclient 服務,注意須要以管理員身份運行。

        # 中止 webclient 服務
        $ net stop webclient
        
        # 啓動 webclient 服務
        $ net start webclient
        
        # 設置 webclient 服務自動啓動
        sc condig webclient start= auto
        在 cmd 下可有兩種方法打開,net 和 sc
        
        net 用於打開沒有被禁用的服務,語法是:
        
          net start 服務名
          net stop  服務名
        
        sc 可打開被禁用的服務,語法是:
        
          sc config 服務名 start= demand    // 手動
          sc condig 服務名 start= auto      // 自動
          sc config 服務名 start= disabled  // 禁用
        
          sc start 服務名
          sc stop  服務名
      • 或者在「控制面板」中依次打開 「管理工具」 => 「服務」 => 「WebClient」,重啓 webclient 服務,同時將 WebClient 的「啓動類型」改成「自動」。

    • 映射網絡驅動器

      • 右鍵單擊「個人電腦」,選擇「映射網絡驅動器」。
      • 在「文件夾」輸入框中輸入「http:// WebDav 服務器的 IP 地址/uploads」。
      • 在彈出的「Windows 安全」界面中輸入上面設置的用戶名 admin 和密碼 adminpasswd。
      • 鏈接成功後在「個人電腦」的「網絡位置」分組中便可看到多出來一個磁盤。
相關文章
相關標籤/搜索