<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. 阿里dubbo服务注册原理解析

           阿里分布式服务框架 dubbo现在已成为了外面很多中小型甚至一些大型互联网公司作为服务治理的一个首选或者考虑方案,相信大家在日常工作中或多或少都已经用过或者接触过dubbo了.但是我搜了 ...

  2. 对扫描的pdf文件生成目录

    很多pdf文件是直接扫描生成的,于是它的内容都是一张张的图片,当然就更没有目录索引了. 有的时候想找某些内容,只能一点点的移动滚动条,非常不方便. 那么有什么方法能生成目录呢? 方法一:使用福昕pdf ...

  3. Spring 注解@Transactional readOnly=true

    引子 今天下班后,以前同事小胖问我Spring  Service类中的注解@Transactional readOnly=true的作用.做为他眼中的高人,我自然要装下A-C.居然想都没有想就说是注解 ...

  4. ruby那些事儿

    为了学习sass,客串一下ruby,这是一个破案的过程,探索的过程. Ruby是日本人发明的一种类似于Python和Perl的服务器端脚本语言,它完全面向对象,适合于快速开发,一般开发效率是java的 ...

  5. [ 转载 ]Java:成员变量,局部变量,静态变量的区别

    精简后方便自己理解. 成员变量 我们研究一个事物: 属性:外在特征:如身高,体重 行为:能做什么:如说话,打球. 在Java语言中,最基本的单位是类(class),类就是用来体现事物的. 属性:类中的 ...

  6. php快速无限遍历递归文件夹目录、子文件,支持绝对路径和相对路径,支持返回生成数组

    支持无限极遍历子文件及文件夹,支持绝对路径和相对路径! 函数说明:array glob ( string $pattern [, int $flags ] )功能:寻找与模式匹配的文件路径,返回包含匹 ...

  7. Python3面向对象基础

    面向对象概述 面向对象 面向对象的世界,引入了对象的概念,对象具有属性:数据,对象具有过程或者方法:成员函数.成员函数的作用就是处理属性. 例子 对象:Car 属性:fuel_level, isSed ...

  8. BZOJ1395 : [Baltic2005]Trip

    建立新图,原图中每条边在新图中是点,新图中每个点的点权为$-e[i].c+e[i].b$,边权为$0$. 若$e[i].d\leq e[j].a$,则连一条$i$到$j$的单向边. 对于原图中每个点, ...

  9. Codeforces 932G Palindrome Partition 回文树+DP

    题意:给定一个串,把串分为偶数段 假设分为$s_1,s_2,s_3....s_k$ 求满足$ s_1=s_k,s_2=s_{ k-1 }... $的方案数模$10^9+7$ $|S|\leq 10^6 ...

  10. ext2文件系统学习(一)

    源码分析网上太多了,不写了,记录简单的实践步骤: 1. 创建ext2文件镜像并映射 cd /tmp count= mkfs.ext2 ext2-1M.img mkdir ext2 sudo mount ...