Beschrijving
Restora maakt een back-up van een WordPress-site in één standaard zip-bestand: elk bestand in de WordPress-map plus een dump van de database.
- Volledige site, of aparte bestanden. Eén zip met alles, of kies de onderdelen (database, plugins, thema’s, media-uploads, WordPress en andere bestanden) en krijg elk als apart bestand, met ‘Alles downloaden’ of een voor een.
- Gemaakt voor beperkte hosting. De back-up draait in korte stukjes en gaat verder waar hij stopte, zelfs midden in een groot bestand, dus PHP-tijdslimieten breken hem niet af.
- Terugzetten vanuit de beheeromgeving. Het archief wordt eerst van begin tot eind gecontroleerd, de database wordt in één atomaire stap omgewisseld, en vooraf wordt een veiligheidsback-up van de huidige site gemaakt.
- Een verloren site terughalen. Upload op een nieuwe, lege WordPress een back-up vanaf je computer en zet hem terug. Back-ups van 10 of 20 GB worden bij elke host in stukken geüpload, gaan na een onderbreking verder en worden overgezet naar het adres van de nieuwe site.
- Planningen. Back-ups van de hele site en van de database elke dag, elke 2 of 3 dagen, elke week, elke 2 weken, elke 15 dagen of elke maand, op de minuut die je kiest, waarbij alleen de nieuwste worden bewaard.
- Standaard format. Het archief is een normale zip die je overal kunt openen; de database is gewone SQL in
.restora/. - Afgesloten voor het web. Back-ups staan in een map met een willekeurige naam en kunnen alleen door een beheerder via WordPress worden gedownload.
Waarom nog een back-upplugin?
Omdat het moeilijkste deel van een back-up het terugzetten is, en daar steekt Restora zijn moeite in.
- Het wordt afgerond op beperkte hosting. Restora schrijft één zip en kan midden in elk bestand pauzeren en verdergaan, dus een korte PHP-tijdslimiet op shared hosting is genoeg voor een site van elke omvang, zonder serverinstellingen te wijzigen.
- Het terugzetten wordt gecontroleerd voordat het iets aanraakt. Elk bestand in het archief wordt eerst geverifieerd, de database wordt in tijdelijke tabellen geladen en in één stap omgewisseld, en
wp-config.phpwordt nooit overschreven. - Niets zit op slot. Elke functie die hier wordt beschreven, werkt volledig in deze plugin, zonder account en zonder een dienst van ons ertussen. Je back-ups blijven op je server.
Restora Pro
Restora Pro is een aparte, betaalde add-on voor wie meer nodig heeft: Reparatie, die de plugin, het thema of het WordPress-bestand vindt dat een site heeft platgelegd en alleen dat repareert zonder alles terug te zetten, een noodherstelpagina die werkt als WordPress zelf kapot is, kopieën op SFTP- en S3-compatibele opslag, de site met één installatieprogramma naar een andere server verhuizen, met AES-256 versleutelde back-ups (vergrendeld met een sleutelpaar, zodat de site zelf nooit de sleutel bezit) en één scherm om al je sites te bewaken en te back-uppen. Deze plugin heeft het niet nodig en vraagt er nooit om, op één kaart op het eigen scherm na.
Vereisten
- PHP 7.4 of nieuwer, 64-bits, met de extensies zip, zlib en pdo_mysql (aanwezig bij bijna elke host).
- MySQL of MariaDB.
- Losse sites. Multisite-netwerken worden nog niet ondersteund.
Externe diensten
Restora maakt geen verbinding met externe diensten. De enige aanvragen die het doet, gaan naar je eigen site, zodat een back-up zichzelf in korte stukjes draaiende kan houden.
Privacy
Een back-up is een kopie van je site, dus hij bevat alle persoonsgegevens die je site bewaart (gebruikersaccounts, reacties, bestellingen enzovoort). Hij wordt opgeslagen in je eigen wp-content-map. Restora verzamelt niets over jou of je bezoekers en stuurt niets naar de maker. Bewaar gedownloade back-ups op een veilige plek.
Schermafbeeldingen
Installatie
- Upload de plugin en activeer hem.
- Open Restora in het beheermenu en klik op Back-up maken.
FAQ
-
Waar worden de back-ups opgeslagen?
-
In
wp-content/restora-<random key>/. De naam is niet te raden, en op Apache en IIS blokkeren de bestanden die Restora erin zet de toegang via het web. nginx negeert die bestanden: Restora controleert eens per dag of de map via het web bereikbaar is en toont in dat geval de regel die je aan de nginx-configuratie moet toevoegen. -
Wat gebeurt er met mijn back-ups als ik de plugin verwijder?
-
Die blijven waar ze zijn. Installeer Restora opnieuw en het vindt ze terug.
-
Wat wordt er niet in een back-up opgenomen?
-
Cachemappen, restanten van WordPress updates en de back-upmappen van andere back-upplugins. Je kunt in de instellingen je eigen paden en patronen toevoegen; ontwikkelaars kunnen ook het filter
restora_excludegebruiken.Uit de database worden de tabellen van de site geback-upt: die van WordPress zelf, plus andere tabellen die je in de instellingen kiest. Weergaven (views), triggers, stored procedures en events niet; WordPress gebruikt ze niet, maar sommige aangepaste code wel.
-
Wat gebeurt er als het terugzetten halverwege stopt?
-
Dan wordt het teruggedraaid. Voordat een bestand wordt vervangen, wordt de huidige versie apart gezet, en de database wordt pas helemaal aan het eind omgeschakeld. Als het terugzetten niet kan worden afgerond (de schijf raakt vol, een map is niet schrijfbaar, het venster wordt gesloten), gaat elk bestand terug naar hoe het was en blijft de database onaangeroerd. Voordat er iets wordt geschreven, controleert Restora ook of de mappen schrijfbaar zijn en of er genoeg vrije ruimte is.
-
Wat als de site plat ligt en ik niet bij wp-admin kan?
-
Een Restora back-up is een gewone zip, dus niets zit vast. De bestanden staan erin zoals ze op de site stonden, en de database is gewone SQL onder .restora/ in het archief: pak de bestanden over de site uit met FTP of de bestandsbeheerder van de host, importeer de SQL met phpMyAdmin, en de site is terug. De stapsgewijze handleiding staat op https://restora.perforks.com/docs#restore-by-hand. Restora Pro voegt een noodherstelpagina toe die dit allemaal voor je doet, zelfs als WordPress zelf niet laadt, en kopieën van je back-ups op S3 of SFTP voor de dag dat de hele server weg is.
-
Wie kan back-ups uitvoeren, downloaden of verwijderen?
-
Alleen beheerders (netwerkbeheerders op een multisite-netwerk): elk scherm, elke knop en elke download controleert die rechten en een nonce, en de back-upmap zelf heeft een willekeurige naam en is gesloten voor het web, dus een back-up kan alleen via Restora worden opgehaald door iemand die met dat recht is ingelogd. Het filter
restora_capabilitymaakt de kring nog kleiner, tot een eigen recht dat je geeft aan de mensen die je kiest. De WP-CLI-commando’s draaien alleen voor iemand met shell-toegang tot de server als de gebruiker van de site zelf, die toch al bij de bestanden kon;define( 'RESTORA_DISABLE_CLI', true )in wp-config.php schakelt ze uit op een server waar die shell gedeeld wordt. De externe toegang van Restora Pro is alleen lezen en starten: een andere site met de toegangssleutel kan back-ups weergeven, starten en downloaden, nooit verwijderen of terugzetten; de sleutel wordt gehasht opgeslagen en blokkeert na een paar foute pogingen. -
Hebben geplande back-ups een echte cronjob nodig?
-
Nee. Ze starten via WP-Cron en houden zichzelf daarna draaiende. Op een site met heel weinig bezoekers starten ze mogelijk later; een servercronjob die
wp-cron.phpaanroept, maakt de timing exact. -
Maakt Restora bestanden buiten zijn eigen mappen?
-
Nee. Alles wat het schrijft, blijft in een eigen map met een willekeurige naam in
wp-content. Tijdens het terugzetten staat daar ook het bijbehorende instellingenbestand (alleen leesbaar voor de site, en zonder de databasegegevens, die uitwp-config.phpworden gelezen); het wordt verwijderd zodra het terugzetten klaar is. -
Kan het een versleutelde back-up terugzetten?
-
Ja. Back-ups die met Restora Pro zijn versleuteld, kunnen hier met hun wachtwoord worden teruggezet, ook zonder Pro. Een verloren wachtwoord kan niet worden teruggehaald: daar is de versleuteling juist voor.
-
Kan het een back-up maken vóór een update?
-
Ja. Schakel onder Instellingen ‘Vóór updates’ in: vlak voordat WordPress een plugin, een thema of zichzelf updatet, maakt Restora een back-up van de database, of van de database met de mappen van plugins en thema’s als je daarvoor kiest. Media worden nooit meegenomen, omdat de update op de back-up wacht. Eén back-up dekt alle updates van de volgende tien minuten, de nieuwste paar worden bewaard, en een back-up die mislukt houdt de update nooit tegen.
-
Heeft het WP-CLI opdrachten?
-
Ja:
wp restora backup,wp restora list,wp restora restore <name>,wp restora delete <name>,wp restora log <name>enwp restora status. Voerwp help restorauit voor de opties.statuseindigt met 1 als de back-ups aandacht nodig hebben. -
Werkt het met multisite?
-
Met Restora Pro wel, site voor site. De back-up van de hoofdsite bevat het netwerk zelf (de tabellen, de gebruikerslijst, de gedeelde bestanden); de back-up van elke andere site bevat de tabellen van die site, de uploads en de gebruikers die erbij horen. „Alle sites” maakt één back-up per site in één set, zodat het hele netwerk met één klik terugkomt, hoofdsite eerst; het terugzetten van één site raakt alleen die site en voegt de gebruikers ervan samen. De gratis plugin zegt dat en stopt op een netwerk.
-
Verwijdert terugzetten bestanden?
-
Nee. Bestanden die op de site staan maar niet in de back-up zitten, blijven staan, en
wp-config.phpwordt nooit overschreven.
Beoordelingen
Er zijn geen beoordelingen voor deze plugin.
Bijdragers & ontwikkelaars
“Restora” is open source software. De volgende personen hebben bijgedragen aan deze plugin.
Bijdragers“Restora” is vertaald in 9 localen. Dank voor de vertalers voor hun bijdragen.
Vertaal “Restora” in je eigen taal.
Interesse in ontwikkeling?
Bekijk de code, haal de SVN repository op, of abonneer je op het ontwikkellog via RSS.
Changelog
1.4.1
- Nieuwe instelling ‘Back-ups van andere plugins’: Restora vindt de back-ups die Duplicator, UpdraftPlus, All-in-One WP Migration, WPvivid, Backup Migration, BackWPup, Solid Backups en WP-DB-Backup op de site bewaren, leest hun mappen uit de eigen instellingen van die plugins en toont elk met de grootte. Aangevinkte worden uitgesloten van bestandsback-ups; vink er een uit om die op te nemen.
- Oplossing: de back-ups van huidige versies van Duplicator (de map duplicator-backups) kwamen in bestandsback-ups terecht.
- Oplossing: een geplande back-up werd opgegeven met ‘De taak reageerde niet meer en is afgebroken’ als de host PHP midden in een stap stopte. De volgende stap wordt nu ingepland voordat elke stap begint, zodat een gestopte stap wordt herhaald en de back-up doorgaat vanaf het laatste controlepunt.
1.4.0
- Een back-up uploaden: haal een site terug uit een back-up op je computer, bijvoorbeeld op een nieuwe, lege WordPress nadat de oude site verloren is gegaan. Het bestand wordt geüpload in stukken die zijn afgestemd op de limieten van de server en op de verbinding, zodat back-ups van 10 of 20 GB bij elke host kunnen worden geüpload; wordt de pagina gesloten of valt de verbinding weg, dan gaat het uploaden verder waar het stopte zodra je hetzelfde bestand opnieuw kiest. De back-up staat daarna in de lijst zoals elke andere en wordt in korte stappen teruggezet en overgezet naar het adres van de nieuwe site.
- Een terugzetting die halverwege wordt afgebroken (venster gesloten, computer of verbinding weggevallen, stroomuitval) kan vanuit elk venster met ‘Hier verdergaan’ vanaf het laatste controlepunt worden voortgezet, of met ‘Terugzetten ongedaan maken’ worden teruggedraaid: elk bestand dat is vervangen komt terug, en de database, die een terugzetting pas in de laatste stap wijzigt, blijft zoals die was. Gebeurt er niets, dan wordt de terugzetting na drie uur vanzelf ongedaan gemaakt. De onderhoudsmodus wordt ongeveer twee minuten nadat een terugzetting stopt opgeheven, zodat de beheeromgeving weer opent om te kiezen.
- Oplossing: een terugzetting die langer dan zes uur duurde (een zeer grote site bij een trage host) werd afgebroken en kon daarna niet meer ongedaan worden gemaakt. De sleutel ervan blijft nu geldig zolang de terugzetting vordert.
- De terugzet-engine kan enkele tabellen uit de database van een back-up terugzetten en de andere laten zoals ze zijn. Restora Pro gebruikt dit om alleen gekozen tabellen terug te zetten.
- Beveiliging: een terugzetting neemt uit de database van een back-up alleen over wat Restora zelf schrijft: gewone rijen met waarden en gewone tabeldefinities. Kopiëren uit andere databases, andere servers of mappen bereiken (FEDERATED, CONNECT, DATA DIRECTORY) en elk ander soort opdracht worden geweigerd voordat er iets verandert.
- Beveiliging: bestandsnamen met stuurtekens worden geweigerd, en namen die via een andere schrijfwijze (een dubbele schuine streep, een korte Windows-naam) bij een beschermd bestand zouden komen, worden overgeslagen.
- Beveiliging: de databaseverbinding gebruikt alleen tekensets waarin het plaatsen van aanhalingstekens veilig is, en elke aanvraag van een terugzetting controleert of het archief nog hetzelfde is als het archief dat aan het begin werd gecontroleerd.
1.3.8
- Versleutelde back-ups worden nu volledig door Restora Pro geschreven; Restora zelf schrijft onversleutelde back-ups en zet versleutelde, net als voorheen, terug met hun wachtwoord. Voor ontwikkelaars: de zip-schrijver krijgt een versleuteling via het nieuwe filter
restora_zip_cipher, en metrestora_backup_sealkan die de archiefindex ondertekenen. - De herinnering om een back-upplanning in te schakelen verschijnt nu alleen nog in het pluginscherm en in het scherm van Restora, niet meer op het dashboard.
1.3.7
- De terugzet-engine kan een volledige back-up controleren zonder iets te schrijven, en verplaatst bij een netwerk dat verhuist de adressen van elke site in dat netwerk mee. Het installatieprogramma van Restora Pro gebruikt dit om een heel multisite-netwerk te verhuizen.
- Een multisite-netwerk behoudt de rollen van elke site wanneer bij het terugzetten het tabelvoorvoegsel verandert.
- WP-CLI legt vast welke sites bij een back-up „Alle sites” van een netwerk horen.
1.3.6
- Een planning wijzigen laat die niet meer opnieuw beginnen. De volgende back-up telt nog steeds vanaf de laatste geplande; als die datum al voorbij is (een back-up vijf dagen geleden, nu elke drie dagen), is het de eerstvolgende keer van het gekozen tijdstip. Intervallen worden in dagen geteld, dus het tijdstip verplaatsen na een back-up geeft niet meer een tweede back-up op dezelfde dag.
- Onder elke planning staat een regel die zegt wanneer die de volgende keer wordt uitgevoerd, hoe vaak en vanaf wanneer er wordt geteld, en die de keuzes op het scherm al volgt voordat je opslaat.
- Een gedownloade back-up krijgt de naam van zijn site (yoursite.com-restora-full-….zip). Een bestand met zo’n naam dat terug in de back-upmap wordt gekopieerd, wordt weer herkend.
- Beveiliging: de terugzet-engine behandelt op Windows-servers ook een backslash als mapscheidingsteken, zodat een gemanipuleerd archief daar niet buiten de site kan schrijven.
1.3.5
- Op nginx zegt de melding over de back-upmap nu duidelijk wat er aan de hand is, toont de exacte regel voor deze site (met de echte mapnaam en het pad, ook voor een site in een submap), legt uit waar je hem plakt in CloudPanel, Plesk en vergelijkbare panelen, en heeft een knop Opnieuw controleren in plaats van een dag te wachten.
- De Restora Pro kaart noemt Reparatie, die de plugin of het thema vindt dat een site heeft platgelegd en alleen dat repareert.
1.3.4
- Planningen kunnen elke 2 of 3 dagen, elke 2 weken of elke 15 dagen worden uitgevoerd, naast elke dag, week en maand. Sitediagnose stemt de controle ‘nieuwste back-up is te oud’ af op de planning die is ingeschakeld.
- De terugzet-engine kan alleen gekozen bestanden of mappen uit een back-up terugzetten, waarbij alleen die worden gecontroleerd, en kan uit plugins, must-use plugins en thema’s verwijderen wat de back-up niet heeft. De noodherstelpagina van Restora Pro gebruikt beide: een bestand dat na de back-up is toegevoegd, is de gebruikelijke reden dat een site niet meer werkt, en een gericht terugzetten brengt één plugin in seconden terug op een site met gigabytes aan uploads. Het terugzetten vanuit het Restora-scherm is ongewijzigd.
1.3.3
- De Restora Pro-kaart onderaan het scherm linkt nu naar Restora Pro, en het Plugins-scherm heeft een Back-ups-link (en een Pro halen-link zolang Pro niet is geïnstalleerd). Verder verandert er niets; de gratis plugin vraagt nergens om.
1.3.2
- Geplande back-ups kunnen op elke minuut van het uur starten, niet alleen op het hele uur.
- Een filter
restora_capability, om te beperken wie Restora mag gebruiken tot een recht dat je zelf kiest, enRESTORA_DISABLE_CLIom de WP-CLI-commando’s uit te schakelen op een server met een gedeelde shell.
1.3.1
- Multisite-netwerken: de hooks die Restora Pro 1.2.0 gebruikt om een netwerk site voor site te back-uppen en terug te zetten (welke tabellen en mappen een back-up meeneemt, welke rijen, een vervolgtaak na een back-up, een samenvoegstap in de terugzet-engine voor de gedeelde gebruikerstabellen). De gratis plugin zegt het nog steeds wanneer een netwerk Pro nodig heeft.
wp restora back-up --site=<id|all>en een site kolom inwp restora listop netwerken.
1.3.0
- Details voor elke back-up in de lijst: open een back-up om te zien van welke site hij komt, de WordPress-, PHP- en MySQL-versies van dat moment, elke databasetabel met het aantal rijen, en de bestanden gegroepeerd zoals je ze ziet: elke plugin en elk thema met de grootte, media-uploads per jaar, en WordPress zelf. Gelezen uit de inhoudsopgave van het archief, dus een versleutelde back-up wordt precies zo weergegeven.
1.2.0
- Een handleiding voor handmatig terugzetten wanneer wp-admin onbereikbaar is, gelinkt vanuit het Terugzetten-paneel en de FAQ: een Restora back-up is een gewone zip met de database als gewone SQL, dus niets zit ooit vast.
- Restora Pro 1.1.0: sitediagnose en het dashboard melden wanneer de noodherstelpagina nog niet is ingesteld.
1.1.1
- De link naar de homepage van de plugin verwijst nu naar https://restora.perforks.com.
1.1.0
- Een back-up vóór updates: als de instelling aan staat, maakt Restora een back-up van de database (en, als je dat kiest, van de plugins en thema’s) vlak voordat WordPress een plugin, een thema of zichzelf updatet, vanuit het dashboard, vanuit WP-CLI of automatisch. Eén back-up dekt een hele reeks updates; de nieuwste paar worden bewaard.
- WP-CLI:
wp restora backup,list,restore,delete,logenstatus, voor scripts en voor sites die vanuit de terminal worden beheerd.statuseindigt met 1 als de back-ups aandacht nodig hebben, zodat het in monitoring kan worden opgenomen.
1.0.3
- Sitediagnose heeft nu een controle ‘Back-ups’: die laat zien of er een planning is ingeschakeld, hoe oud de nieuwste back-up is, en of de laatste geplande back-up is mislukt.
- Een melding op het dashboard en in het pluginscherm als Restora is geïnstalleerd maar er geen planning is ingeschakeld. Die kan worden genegeerd.
- De log van elke back-up blijft ernaast bewaard: een Log link in de lijst opent het, ook lang nadat de taak zelf verdwenen is. Als je ons schrijft over een probleem, is dat de tekst om mee te sturen.
- De lijst toont hoe lang elke back-up duurde.
- Onvoldoende schijfruimte wordt gemeld zodra de scan de grootte van de back-up kent, met de cijfers erbij, in plaats van dat de back-up tegen het einde mislukt.
- Een handmatig gestarte back-up die mislukt nadat het venster is gesloten, stuurt nu ook de e-mail over de mislukte back-up, als er een adres is ingesteld.
- De knop Downloaden laat zien dat de server het bestand voorbereidt, en meldt wanneer de download is begonnen; vanaf dan toont je browser de voortgang. Alles downloaden wacht tot elk deel is begonnen voordat het volgende wordt opgevraagd.
1.0.2
- Een andere WordPress site die de database deelt, wordt nu herkend, wat het tabelvoorvoegsel ook is (ook een willekeurig voorvoegsel zoals mttpiSq_). Die site wordt bij naam genoemd onder Instellingen › Andere databasetabellen, in plaats van dat de tabellen ervan worden vermeld alsof aangepaste code ze had gemaakt, en wordt nooit samen met deze site geback-upt of teruggezet.
- De instellingen tonen nu welk voorvoegsel deze site gebruikt, zoals gelezen uit wp-config.php.
1.0.1
- Wanneer een back-up of terugzetting wordt afgebroken, legt een duidelijk bericht nu uit wat er is gebeurd: de aanvraag werd geblokkeerd, de server verzond een onverwachte pagina of een fout, de verbinding viel weg, de server antwoordde niet meer, of de voortgang stokte.
1.0.0
- Eerste release: hervatbare back-ups van de volledige site of van aparte onderdelen, terugzetten met een veiligheidsback-up, planningen en bewaartermijnen.
