Здравствуйте.
Разбираюсь с пакетом
spatie/laravel-backup. Появилось два вопроса:
- Все резеврные копии складываются в
/storage/app/--------------------------------------------
. Как поменять --------------------------------------------
на более понятное :)
- Наткнулся на статью, где показывалось, как устанавливать пароль на созданный архив. Сделал, как было указанно, но почему-то не срабатывает.
2) пункт чуть подробнее. Создал слушателя
App\Listeners\EncryptBackupZip
EncryptBackupZip
<?php declare(strict_types=1);
namespace App\Listeners;
use ZipArchive;
use Illuminate\Support\Collection;
use Spatie\Backup\Events\BackupZipWasCreated;
class EncryptBackupZip
{
/**
* @param BackupZipWasCreated $event
*/
public function handle(BackupZipWasCreated $event): void
{
$zip = new ZipArchive;
$zip->open($event->pathToZip);
$zip->setPassword(config('app.backup.password'));
Collection::times($zip->numFiles, function ($i) use ($zip) {
$zip->setEncryptionIndex($i - 1, ZipArchive::EM_AES_256);
});
$zip->close();
}
}
В EventServiceProvider, добавил слушателя:
protected $listen = [
Registered::class => [
SendEmailVerificationNotification::class, // был
EncryptBackupZip::class // добавил
],
];
В
config/app.php
добавил
'backup.password' => env('BACKUP_PASSWORD')
(и соответственно в .env указал константу с паролем (
BACKUP_PASSWORD = 'password'
))
Отчистил кэш настроект:
php artisan config:cache
, далее запускаю команду создания бэкапа:
php artisan backup:run
. Копия создается, уведомление на почту падает, созданный архив без пароля. Подскажите где ошибся?