Repository navigation
Releases: Eugene88-source/easy-site-backup
Releases · Eugene88-source/easy-site-backup
Release list
1.1.2
- Розпакування зупиняється, щойно дані запису перевищують заявлений в архіві розмір: підроблений архів («ZIP-бомба») більше не може заповнити диск ні під час завантаження з комп'ютера, ні під час відновлення.
- Файли, які не відновлюються (
wp-config.php, сам плагін, сховище, drop-ins кешу), розпізнаються без урахування регістру — на Windows і macOSWP-CONFIG.phpв архіві більше не перезапишеwp-config.php. - Недозавантажені архіви (закрили вкладку посеред завантаження) видаляються автоматично через добу, а не лишаються на диску назавжди.
- Попередження на сторінці плагіна, якщо
wp-contentлежить поза текою WordPress і тому не потрапляє в копію.
1.1.1
- Відновлення не переписує drop-ins кешу
wp-content/object-cache.phpіadvanced-cache.php: вони прив'язані до сервера (Redis, Memcached), і копія, відновлена на сервер без того самого кешу, не відкривалася з помилкою «Error establishing a Redis connection».
1.1.0
- Резервні копії зберігаються поза публічною текою сайту (поруч із
public_html), якщо хостинг дозволяє туди писати: тоді їх не віддасть за посиланням жоден вебсервер чи проксі, незалежно від.htaccessі налаштувань Nginx. Наявні копії переносяться автоматично під час першого відкриття сторінки плагіна; якщо перенести не вдалося, усе лишається на старому місці з попередженням, як раніше.
1.0.0
Перша стабільна версія: повний цикл «бекап → скачати → відновити на новому сервері» перевірено на хостингах Apache + mod_php і Nginx + PHP-FPM з лімітами дешевого хостингу (128 МБ пам'яті, 30 с на запит, 0,1 ядра процесора) на сайті з базою ~600 МБ і файлом 1 ГБ, з обривами процесу у випадкові моменти.
- Резервні копії бази й файлів вручну та за розкладом, з ротацією й листами про помилки.
- Відновлення з копії на сервері або з архіву, завантаженого з комп'ютера; атомарна заміна бази, перевірка цілісності за CRC.
- Покрокова робота без упирання в ліміти хостингу: дамп і великі файли частинами, скачування й завантаження архіву частинами, продовження після обірваного кроку.
- Захищене сховище з самоперевіркою доступу на Nginx; оновлення з GitHub.
0.5.3
- Відновлення після обірваного кроку більше не може задвоїти рядки: інструкція, що встигла виконатися до обриву, розпізнається за кількістю рядків (раніше таблиці без первинного ключа отримували дублі), а наступний крок чекає, доки MySQL завершить запит обірваного.
- Великий файл, відновлення якого обірвалося одразу після перейменування тимчасового файлу, більше не може бути пошкоджений: якщо тимчасового файлу вже немає або він коротший за збережену позицію, файл відновлюється спочатку.
- Новий тест «вбиває» процес PHP у випадкові моменти бекапу й відновлення (зокрема одразу після заміни таблиць) і перевіряє, що дані збігаються до байта.
0.5.2
- Скачування великих архівів на хостингах, що обривають довгий запит: кнопка «Завантажити» в Chrome і Edge качає архів частинами по 8 МБ у вибраний файл; сервер підтримує докачування (HTTP Range) для інших браузерів, менеджерів завантажень і
curl -C -.
0.5.1
- Великі сайти на повільному хостингу: дамп бази пишеться в архів і відновлюється частинами по ~16 МБ, а файли від 64 МБ копіюються частинами між кроками, тож жоден запит не впирається в ліміт часу хостингу, хоч якою великою є база чи файл. Архіви попередніх версій відновлюються, як і раніше.
- Неподільні фази починаються лише на початку кроку, щоб мати весь його час.
- На Windows-серверах: повторні спроби збереження стану, якщо файл на мить зайнятий антивірусом; відхилений архів більше не лишає файлів на диску.
0.5.0
- Відновлення з файлу: архів копії можна завантажити з комп'ютера (частинами, без обмеження розміру одного запиту) і відновити з нього сайт — зокрема на щойно встановленому WordPress після втрати сервера.
0.4.9
- Щогодинна перевірка оновлень завжди питає GitHub наново, а не бере збережену відповідь: раніше відповідь, збережена перед самим релізом, могла ховати нову версію ще до 50 хвилин.
0.4.8
- Блок конфігурації Nginx у попередженні: шлях у лапках (пробіл у шляху більше не ламає конфігурацію) і розкодований з URL; якщо файли uploads віддаються з іншої адреси (CDN), показується підказка, де додати блок.
- Рядки блоку коду більше не зсуваються: прибрано відступ і зменшений шрифт, які WordPress дає тегу code.