ramon/backup 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

ramon/backup

最新稳定版本:v2.0.15

Composer 安装命令:

composer require ramon/backup

包简介

All-in-one backup, export and import for Flarum, with optional asymmetric encryption.

README 文档

README

License Latest Stable Version Total Downloads GitHub Release Donate

A complete backup, export and import system for Flarum 2.x

About the Project

Backup & Migration is a full-featured backup and migration extension I've been building for Flarum, inspired by All-in-One WP Migration but written from scratch with a Flarum-native format. It bundles your forum into a single portable .flarum file — database, uploads, storage, and any installed extensions (workbench or vendor) — and restores it on the same install or a different one with one click.

It started from my own need to migrate forums between hosts without the manual mysqldump-and-zip dance, and grew into a complete suite covering encryption, cross-server transfer, per-extension picking, and automatic URL rewriting.

✨ Highlights

  • Single portable .flarum file — custom streaming format (not .wpress, not zip), forward-only so multi-GB backups never need to fit in memory
  • Pick what to bundle — database, public/assets, storage, and individual extensions, with a tag on each row showing whether it lives in workbench/ or in vendor/ (composer-managed)
  • composer.json + composer.lock travel along — vendor extensions stay reproducible on the destination
  • Resumable, chunked progress on both export and import (~4 MB per HTTP request), with live progress bars and an upload % indicator
  • Optional asymmetric encryption — libsodium hybrid scheme: sealed-box wraps a per-archive XChaCha20-Poly1305 stream key. Public key in the database, private key only in config.php
  • Cross-server transfer — encrypt to a foreign public key, paste the matching private key at import time
  • Automatic URL rewriting — the source URL is recorded in the archive header and rewritten across settings, posts.content and posts.parsed_content when restoring on a different host
  • Selectable restore — per-section and per-extension checkboxes populated from the archive's manifest
  • Foreign-key-safe restore — disables FK checks per tick so DDL referencing not-yet-created tables succeeds without ordering dance
  • Smart pruning while scanning (node_modules, .git, .idea, nested vendor/…) so workbench scans stay seconds-fast
  • Dedicated "you've been logged out" screen when a DB restore replaces the admin's session

🛠️ Technologies

  • PHP 8.1+ — resumable export / import jobs, libsodium crypto, MySQL dumper
  • TypeScript + Mithril — admin panel UI
  • LESS — styling (theme-aware via Flarum's CSS variables)
  • libsodium — sealed-box + secretstream chunked encryption

Installation

composer require ramon/backup
php flarum migrate
php flarum cache:clear

Then enable Backup & Migration under the Extensions page in the admin panel.

Links

License

MIT

Built with ❤️ by Ramon Guilherme

A personal project focused on making it easier to back up, move and restore Flarum communities — without leaving the admin panel.

统计信息

  • 总下载量: 105
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 9
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-05-09

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固