اگر دنبال یک راه ساده و رایگان برای گرفتن بک آپ از اپلیکیشن تون در dropbox می گردید, این آموزش به شما کمک می کنه تا به هدفتون برسید.
قدم اول
ابتدا پکیج های spatie/laravel-backup و thephpleague/flysystem-dropbox رو با توجه به مستندات شون نصب کنید.
قدم دوم
در مسیر app/Providers یک فایل بنام DropboxFilesystemServiceProvider.php بسازید و کلاس App\Providers\DropboxFilesystemServiceProvider::class رو به آرایه ی providers در فایل config/app.php اضافه کنید.
کد زیر برای فایل DropboxFilesystemServiceProvider.php من هست. به متغیرهایی که مربوط به accessToken و appSecret هستند, توجه کنید, اینها رو باید وقتی که dropbox app رو ساختید وارد کنید. شما میتونید این ها رو در فایل env. هم مقداردهی کنید.
namespace App\Providers;
use Storage;
use League\Flysystem\Filesystem;
use Dropbox\Client as DropboxClient;
use League\Flysystem\Dropbox\DropboxAdapter;
use Illuminate\Support\ServiceProvider;
class DropboxFilesystemServiceProvider extends ServiceProvider
{
public function boot()
{
Storage::extend('dropbox', function ($app, $config) {
$client = new DropboxClient($config['accessToken'], $config['appSecret']);
return new Filesystem(new DropboxAdapter($client));
});
}
public function register()
{
//
}
}
قدم سوم
یک Dropbox API App بسازید.
مطمئن بشید که یک توکن access ساخته اید. مقادیر توکن access و app secret رو در فایل env. پروژه مقداردهی کنید. با تولید یک توکن دسترسی, یک پوشه به نام Apps در پوشه ی Dropbox شما ایجاد میکنه. این جایی هست که بک آپ شما ذخیره میشه.
قدم چهارم
فایل config/laravel-backup رو ویرایش کنید و مقدار disks رو ['dropbox'] قرار بدید. اگر شما فایلی با عنوان laravel-backup.php مشاهده نمی کنید, دستور زیر رو اجرا کنید تا این فایل ایجاد بشه :
php artisan vendor:publish –provider=”Spatie\Backup\BackupServiceProvider
قدم پنجم
فایل سیستم dropbox رو به فایل config/filesystems.php بیافزایید :
'dropbox' => [
'driver' => 'dropbox',
'accessToken' => env('DROPBOX_ACCESS_TOKEN'),
'appSecret' => env('DROPBOX_APP_SECRET'),
]
قدم ششم
فایل kernel.php رو در مسیر app/console ویرایش کنید. این بک آپ ایجاد کرده و بک آپ های قدیمی رو حذف می کنه. شما میتونید تعیین کنید که چه تعداد بک آپ میخواهید داشته باشید. این تنظیمات رو در فایل config/laravel-backup.php انجام بدید :
// app/Console/Kernel.php
protected function schedule(Schedule $schedule)
{
$schedule->command('backup:clean')->daily()->at('01:00');
$schedule->command('backup:run')->daily()->at('02:00');
}
قدم هفتم
زمان بندی رو برای اجرای بک آپ انجام بدید. برای اینکار شما میتونید از یک cron job استفاده کنید. یا اگر از Forge استفاده میکنید, میشه اونجا راه اندازیش کرد. مستندات بیشتر.
دیدگاه و پرسش
در حال دریافت نظرات از سرور، لطفا منتظر بمانید
در حال دریافت نظرات از سرور، لطفا منتظر بمانید