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。
      • 链接成功后在“个人电脑”的“网络位置”分组中便可看到多出来一个磁盘。
相关文章
相关标签/搜索