V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
liuzhongliang
V2EX  ›  分享创造

phpdav-1.1 快速使用教程

  •  
  •   liuzhongliang · 2021-03-24 18:32:14 +08:00 · 1382 次点击
    这是一个创建于 1166 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用 phpdav,可以快速在你的 linux 机器(如使用 centos 系统的开发机)上“零配置”的快速建立一个自己的 webdav 站点。

    phpdav 项目的 git 地址

    https://github.com/xinghanking/phpdav

    1. 从 git 上获取全部源代码到你的安装目录下,假设你的安装目录是 /home/work/phpdav

    如果你在你的 linux 开发机里安装过 composer, 你也可以在你的开发机 /home/work 目录下直接执行

    composer create-project liuzhongliang/phpdav
    

    然后 phpdav 的源码就在 /home/work/phpdav 下了

    1. 进入 phpdav 的安装目录 /home/work/phpdav, 如下执行
    cd /home/work/phpdav
    chmod +x bin/phpdav
    bin/phpdav start
    

    这样就启动完成了。

    如果你的 8150 端口没有被占用,你就成功建立了一个默认工作目录为 /home/work/phpdav/share_disk 的 webdav 站点,/home/work/phpdav 是你的 phpdav 安装目录,如果你把你的 phpdav 安装到了其它目录,就在该目录下找 share_disk

    如果你关闭了你的 centos 的 iptable 或 fire-walld, 或者在里面添加开放了 8150 端口的 tcp 访问,你就可以使用了。

    假定你的安装 phpdav 的开发机 IP 为:192.168.1.106

    那么你的 webdav 站点地址就是:

    http://192.168.1.106:8150
    

    然后你就可以把它挂载成你本地计算机的一个网盘来使用。

    配置说明

    1. 开启 https 支持

    在 phpdav 安装目录下,编辑 conf/phpdav.conf 文件

    参见里面的说明,就可以了,目前仅支持配置一个 https 的 webdav 站点

    1. 多主机名、多用户配置

    在本地计算机的 host 里添加两条记录

    windows 的 host 在 C:\Windows\System32\drivers\etc 下

    mac 的 host 在 /etc 下

    www.a.com 192.168.1.106
    
    www.b.com 192.168.1.106
    

    在你安装 phpdav 的开发机的 /home/work 下新建两个目录

    mkdir first
    
    mkdir second
    

    在 phpdav 安装目录下,编辑 conf/dav_host.conf 文件

    <?php
    
    $net_disks = [
        'default' => [
            'path' => BASE_ROOT . DIRECTORY_SEPARATOR . 'share_disk',
            'is_auth' => false,//是否开启用户认证
            'user_list' => [
                'phpdav' => 'phpdav'
            ]
        ],
        'www.a.com' => [
            'path'    => '/home/work/first',
            'is_auth' => true,
            'user_list' => [
                'user1' => 'password1',
                'user2' => 'password2'
            ]
         ],
        'www.b.com' => [
            'path'    => '/home/work/second',
            'is_auth' => true,
            'user_list' => [
                'user3' => 'password3',
                'user4' => 'password4'
            ]        
         ]     
    ];
    

    这样你就多了两个 webdav 站点,

    http://www.a.com:8150/ => /home/work/first
    http://www.b.com:8150/ => /home/work/second
    
    1 条回复    2021-03-25 07:18:35 +08:00
    xinyana
        1
    xinyana  
       2021-03-25 07:18:35 +08:00 via Android
    虽然几千字的 [零配置] 没有看完,但还是给你点个赞
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3730 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 10:25 · PVG 18:25 · LAX 03:25 · JFK 06:25
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.