<br/ >

本文已停止更新,点击此链接查看本文最新内容 !!!

1、WebDav 服务器

  • 基于 http 协议的 "文件" 服务器。

  • 实现文件的上传/下载/修改/删除。

  • WebDav 权限

    • 授权信息的格式 BASIC (用户名:口令)base64
    • 安全性并不高,密码很容易被拦截和破解。
  • 应用场景:开发企业级的管理系统,可以用 WebDav 搭建一个内部的文件管理服务器,只是在公司内网使用。

2、配置准备工作

  • 1)配置服务器的工作

    • 修改了两个配置文件。
    • 创建 web 访问用户的用户名和口令。
    • 创建了两个目录,并且设置管理权限。
  • 2)配置服务器注意事项

    • 关闭中文输入法。
    • 命令和参数之间需要有 "空格"。
    • 修改系统文件一定记住 "sudo",否则会没有权限。
  • 3)示例配置环境

    • macOS 10.11.6
    • macOS 10.13.3
  • 4)WebDav 服务器配置脚本文件

3、配置服务器

  • 打开终端,按照下面的操作开始配置,$ 开头的,可以直接拷贝,但是不要拷贝 $

    # 切换工作目录
    $ 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

4、常见问题

  • 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。
      • 连接成功后在“我的电脑”的“网络位置”分组中即可看到多出来一个磁盘。

Mac Apache WebDav 服务器配置的更多相关文章

  1. iOS - Mac Apache WebDav 服务器配置

    前言 Apache 服务器: Web 服务器,可以支持各种脚本(PHP)的执行,目前世界上使用最为广泛的一种 Web 服务器 WebDav 服务器: 基于 http 协议的 "文件" ...

  2. iOS - Mac Apache WebServer 服务器配置

    前言 Apache 是目前使用最广的 Web 服务器,可以支持各种脚本的执行. Mac 系统自带,无需单独安装,只需要修改几个配置就可以,简单,快捷. 有些特殊的服务器功能,Apache 都能很好的支 ...

  3. Mac Apache WebServer 服务器配置

    前言 Apache 是目前使用最广的 Web 服务器,可以支持各种脚本的执行. Mac 系统自带,无需单独安装,只需要修改几个配置就可以,简单,快捷. 有些特殊的服务器功能,Apache 都能很好的支 ...

  4. Mac Apache Tomcat WebServer 服务器配置

    1.配置准备工作 1)配置服务器准备工作 在 Finder 中创建一个 "workspace" 的文件夹,可直接创建在 /Users/QianChia(当前用户名)目录下. 下载相 ...

  5. Linux命令详解-Apache网站服务器配置和管理

    1.Apache网站服务器配置和管理 1.源码包安装 2.rpm包安装 rpm –a | grep httpd 3.启动服务 service httpd start 4.配置文件: /etc/http ...

  6. Apache & WebDav 配置(一)

    (一)简单Apache服务器的搭建!用于文件de上传.下载.修改.删除! ---------- - Apache 1. 使用最广的 Web 服务器.支持各种脚本(PHP)的执行 2. Mac自带,只需 ...

  7. MAC apache配置

    启动 apache:在terminal中输入命令,sudo apachectl start 启动成功后访问lcoalhost会显示“It works”. 更改默认路径:命令行输入“sudo vim / ...

  8. os mac apache+php+mysql环境配置

    1.启用系统自带的apache 服务 打开终端(terminal) #sudo apachectl start #sudo vi /etc/apache2/httpd.conf 修改 LoadModu ...

  9. Apache & WebDav 配置(二)

    (二)WebDav配置 & put脚本编辑! WebDav 配置 ---------------- # 1. 修改了两个配置文件 # 2. 创建web访问用户的用户名和口令 # 3. 创建了两 ...

随机推荐

  1. POJ 3280 Cheapest Palindrome【DP】

    题意:对一个字符串进行插入删除等操作使其变成一个回文串,但是对于每个字符的操作消耗是不同的.求最小消耗. 思路: 我们定义dp [ i ] [ j ] 为区间 i 到 j 变成回文的最小代价.那么对于 ...

  2. codeforces 758D Ability To Convert【DP】

    在N进制下给你一个数,要你转换成最小的十进制数; 状态转移方程:从前向后 dp[j]表示j位前数列的最小十进制数 dp[j]=min(dp[j],dp[i]*n+x) 程序: #include < ...

  3. hdu 2825

    题解: ac自动机+dp的题目 差不多都一个套路 记录枚举了i位,匹配到自动机上的x位,然后对于匹配了哪些单词状态压缩一下就可以了 代码: #include <bits/stdc++.h> ...

  4. 微信WebView关闭后本地cookie无法清除问题

    问题背景 在微信WebView下的页面中登录后,关闭WebView返回后再次进入页面,发现登录态还存在,原因是微信不会主动清除cookie以及其他的缓存. 期望是关闭窗口后会清除cookie,重新进入 ...

  5. 【Java】 剑指offer(38) 字符串的排列

    本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 输入一个字符串,打印出该字符串中字符的所有排列.例如输入字符串ab ...

  6. Cpu 常见系列以及型号

    Intel旗下 赛扬(Celeron)——桌面低端 奔腾(Pentium)—— 桌面中端 酷睿 (Core)——桌面高端 至强(Xeon)——服务器中端 安腾(Itanium)——服务器高端 凌动(A ...

  7. android和java以太坊开发区块链应用使用web3j类库

    如何使用web3j为Java应用或Android App增加以太坊区块链支持,教程内容即涉及以太坊中的核心概念,例如账户管理包括账户的创建.钱包创建.交易转账,交易与状态.智能合约开发与交互.过滤器和 ...

  8. poj 1703 - Find them, Catch them【带权并查集】

    <题目链接> 题目大意: 已知所有元素要么属于第一个集合,要么属于第二个集合,给出两种操作.第一种是D a b,表示a,b两个元素不在一个集合里面.第二种操作是A a b,表示询问a,b两 ...

  9. Java并发编程快速学习

    上周的面试中,被问及了几个关于Java并发编程的问题,自己回答的都不是很系统和全面,可以说是"头皮发麻",哈哈.因此果断购入<Java并发编程的艺术>一书,学习后的体会 ...

  10. Java定时线程池停止超时任务

    一.背景题主最近遇到一个问题,本来通过ScheduledExecutorService线程池定时调度一个任务.奈何不知道为啥跑了2个多月,其中一个任务Hang住了,原本定时的任务则出现了问题. 关于定 ...