spotman/davbackup

通过WebDav在云中创建备份站点

2.0.6 2019-02-07 14:51 UTC

This package is auto-updated.

Last update: 2024-09-08 06:37:22 UTC


README

这是一个从dmamontov的原始包中派生的分支。

PHP Backup to WebDav Server

此包可以将文件和数据库备份到WebDav服务器。

它接受指定本地目录的路径,并创建一个包含目录文件的PHAR存档。

基类还可以使用PDO连接到指定数据库,并生成包含用于重新创建数据库的SQL语句的备份文件。生成的SQL文件也添加到PHAR存档中。

PHAR存档被压缩,并通过WebDAV协议传输到指定远程服务器。

此包附带几个专门配置连接到不同WebDAV服务器的子类。

要求

  • PHP版本5.3.6或更高版本

目前它支持云服务

  • Yandex Disk
  • CloudMe
  • GoogleDrive 通过服务 dav-pocket 运行
  • DropBox 通过服务 dropdav 运行
  • Mail Disk 暂时不工作
  • OneDrive 暂时不工作

安装

  1. 安装 composer

  2. 在项目文件夹中执行

composer require spotman/davbackup ~1.1.0

在config composer.json 中,您的项目将被添加到库 dmamontov/davbackup 中,该库位于文件夹 vendor/ 中。如果没有配置文件或供应商文件夹,它们将被创建。

如果之前您的项目没有使用 composer,则将启动文件连接到供应商。为此,请在项目中输入以下代码

require 'path/to/vendor/autoload.php';

工作示例

require 'DavBackup.php';

$ya = new YandexBackup('test@yandex.ru', 'test');

$ya->setDbConnection('user', 'password', 'db')
   ->setPath('/var/www/public_html')
   ->setType(YandexBackup::ZIP)
   ->setRemoveFile(false)
   ->execute();

添加对WebDav云支持的工作示例

class MyDavBackup extends DavBackup
{
    const URL = 'https://dav.my.ru/';

    public function __construct($login, $password)
    {
        parent::__construct(self::URL, (string) $login, (string) $password);
    }
}