Zo stel je een WebDAV-server in als doel voor je back-ups, bijvoorbeeld Nextcloud, ownCloud of een NAS: van het formulier via de verbindingstest tot het opgeslagen doel.
Dit heb je nodig
- het adres van de map op de server, beginnend met https://,
- gebruikersnaam en wachtwoord; gebruikt het account tweefactorauthenticatie, dan een app-wachtwoord,
- een map die niemand zonder toestemming kan bereiken, ook niet via een deellink.
WebDAV is bestandstoegang via HTTP. De plugin spreekt WebDAV via de PHP-extensie cURL en leest de antwoorden van de server met de PHP-extensie DOM.
Stap 1: doeltype kiezen
Open de pagina Doelen en klik op Doel toevoegen. Kies WebDAV.
- De doeltypen die er zijn. WebDAV draagt de wereldbol.
- Sluiten sluit de keuze.
Ontbreekt cURL of DOM op de webserver, dan is WebDAV grijs en draagt het label Niet beschikbaar op deze server. De reden staat onder de keuze.
Stap 2: formulier invullen
- Naam is vrij te kiezen. De plugin stelt “WebDAV 1” voor; elke naam werkt die nog niet in gebruik is.
- Adres van de map is het volledige WebDAV-adres. Ontbrekende mappen maakt de plugin aan.
- Gebruikersnaam
- Wachtwoord is het wachtwoord van het account of een app-wachtwoord.
- Verbinding testen controleert de ingevoerde waarden zonder op te slaan.
Velden met een rode ster zijn verplicht. Voor het adres geldt:
- Bij Nextcloud en ownCloud heeft het de vorm
https://<server>/remote.php/dav/files/<gebruiker>/<map>/. - Gebruikersnaam en wachtwoord horen in hun eigen velden, niet in het adres. Een adres met inloggegevens, vraagteken of hekje weigert het formulier: Deze waarde is niet geldig.
- Een adres met http:// accepteert de plugin. Wachtwoord en gegevens gaan dan als leesbare tekst over de lijn.
De map mag niet openbaar bereikbaar zijn
Zorg ervoor dat niemand zonder toestemming toegang tot de map heeft, bijvoorbeeld via een deellink. De plugin stuurt nooit proefverzoeken naar servers van derden. Hij kan je daarom niet vertellen of de map openbaar is.
Stap 3: verbinding testen
Klik op Verbinding testen. De test meldt zich aan bij de server, schrijft een klein bestand, vraagt de grootte ervan op, hernoemt het, leest het terug, geeft de map weer en verwijdert het bestand weer. Met een testbestand van 1 MiB meet hij de uploadsnelheid.
- Het resultaat van de test: de verbinding werkt, een testbestand is geschreven, teruggelezen en verwijderd.
- De uploadmethode die de test heeft vastgesteld, en de gemeten uploadsnelheid.
WebDAV zelf kent geen manier om een onderbroken upload voort te zetten. De plugin kent drie methoden. De test stelt vast welke jouw server aanbiedt:
| Regel in het resultaat | Betekenis |
|---|---|
| Uploadmethode: de server zet een onderbroken upload voort waar die stopte. | De server neemt een deel van een bestand op een bepaalde positie aan, bijvoorbeeld Apache met mod_dav. De methode heet range. |
| Uploadmethode: in secties, zoals Nextcloud en ownCloud die aanbieden. | De secties gaan naar een uploadmap van de server, die ze aan het einde samenvoegt. Dat werkt alleen met een adres van de vorm …/remote.php/dav/files/<gebruiker>/…. De methode heet chunks. |
| Uploadmethode: elk bestand in één verzoek, omdat de server een upload niet kan voortzetten. | Voor servers die geen van beide andere aanbieden. De methode heet whole. Daaronder staat hoe groot de delen van een back-up hoogstens worden. |
De laatste regel noemt de snelheid: Gemeten uploadsnelheid: … per seconde.
Stap 4: opslaan
Klik op Opslaan. De plugin slaat het doel op, test de verbinding nog een keer en meldt het resultaat: “…” opgeslagen en verbonden. Plannen en back-ups gebruiken een doel pas na een geslaagde verbindingstest.
- Alle doelen zijn verbonden.
- De melding noemt het doel: opgeslagen en verbonden.
- Het nieuwe doel staat in de lijst. De groene stip betekent: verbonden. Vóór een doel van het type WebDAV staat de wereldbol.
Vindt de plugin op de locatie van het doel back-ups die niet in jouw lijst staan, dan verschijnt de tegel Back-ups gevonden op „…”. Meer daarover: Back-ups terugvinden na totaal verlies.
Stap 5: het doel in het back-upplan kiezen
- Je eerste doel: de plugin maakt het plan “Dagelijkse back-up” aan: dagelijks op een willekeurig tijdstip, alles, dit doel, Max. back-ups 7. Het plan is gepauzeerd tot je het inschakelt.
- Een verder doel: kies het op de pagina Back-up in de tegel Back-upplannen in een plan. De gratis versie staat twee plannen en één doel per plan toe.
Meer daarover: Back-ups automatisch inplannen.
De velden van de weergave Uitgebreid
- Tijdslimiet voor de verbinding (seconden) neemt 3 tot 60, de standaard is 10.
-
Uploadmethode mag leeg blijven: dan geldt wat de verbindingstest heeft vastgesteld. Mogelijke waarden zijn
range,chunksenwhole. - Uploadsnelheid (bytes per seconde) mag leeg blijven: dan geldt wat de verbindingstest heeft gemeten.
- Geaccepteerde sleutel van de server wordt gezet door Dit certificaat accepteren. Leeg betekent: de plugin controleert het certificaat aan de hand van de lijst met vertrouwde instanties.
In een leeg veld waarvan de test de waarde vaststelt, staat automatisch. Elke verbindingstest stelt methode en snelheid opnieuw vast. De back-ups houden beide bij: een lagere snelheid geldt meteen, een hogere voor de helft. Wat je zelf invult, gaat altijd voor.
Versleuteling en certificaat
https:// is de regel. Met http:// waarschuwt het resultaat van de verbindingstest: De verbinding is niet versleuteld: wachtwoord en gegevens kunnen onderweg worden meegelezen.
Met https:// controleert de plugin het certificaat van de server aan de hand van de lijst met vertrouwde instanties die WordPress meebrengt, inclusief de naam van de server. Mislukt de controle, dan mislukt de test en toont hij het certificaat.
- De reden: niet uitgegeven voor deze servernaam, zelfondertekend, van een onbekende instantie of verlopen.
- De gegevens van het certificaat: voor wie het is uitgegeven, door wie, tot wanneer het geldig is, en de vingerafdruk.
- Dit certificaat accepteren neemt de sleutel van het certificaat over in het formulier en test nog een keer.
Boven de reden 1 staat in de afbeelding de regel Melding van cURL met de oorspronkelijke foutmelding van cURL.
Alleen accepteren als de vingerafdruk klopt
Na het accepteren vertrouwt de plugin precies deze sleutel en controleert hij niet meer wie het certificaat heeft uitgegeven. Niemand heeft bevestigd dat dit de juiste server is: vergelijk de vingerafdruk met de vingerafdruk die jouw aanbieder noemt.
Na het accepteren staat in het resultaat van een geslaagde test de waarschuwing: Het certificaat wordt niet gecontroleerd aan de hand van de lijst met vertrouwde instanties; de plugin vertrouwt de sleutel die je hebt geaccepteerd.
De controle wordt nooit uitgeschakeld. Toont de server later een andere sleutel, dan doorstaat het doel zijn test niet meer: De server toont een andere sleutel dan de sleutel die je hebt geaccepteerd. Hij heeft misschien een nieuw certificaat, of iemand zit ertussen. Accepteer het nieuwe certificaat alleen als je weet waarom het is veranderd.
Als de test mislukt
Mislukt de test, dan staat het resultaat onder de velden van het formulier. In de afbeelding heeft de server de aanmelding geweigerd.
- De oorzaak in gewone taal. De link aan het einde, Logboek tonen, opent het algemene logboek. Daar staan de details van de test.
- Melding van het doel is de oorspronkelijke foutmelding van de WebDAV-server.
Heeft ook cURL iets gemeld, dan staat daaronder Melding van cURL. De foutmeldingen in beide regels zijn niet vertaald; inloggegevens, mappen en servernamen zijn erin onleesbaar gemaakt.
| Melding | Wat je kunt doen |
|---|---|
| Het doel is niet bereikbaar. Controleer de servernaam en de poort; de hoster van deze website blokkeert de poort misschien. | Controleer het Adres van de map: de naam van de server en, als het adres er een noemt, de poort. |
| Het doel heeft de aanmelding geweigerd. Controleer gebruikersnaam en wachtwoord. | Voer de inloggegevens opnieuw in. Gebruikt het account tweefactorauthenticatie, maak daar dan een app-wachtwoord aan en vul het in. |
| Het certificaat van het doel heeft de controle niet doorstaan. | Zie de paragraaf “Versleuteling en certificaat”. |
| Het doel verwijst door naar een ander adres. De plugin volgt geen doorverwijzing; test de verbinding van het doel om het nieuwe adres te zien. | Zie de volgende paragraaf. |
| Het doel staat niet alles toe wat de plugin nodig heeft. | Onder de melding staat wat ontbreekt, bijvoorbeeld het hernoemen of het lezen vanaf een positie. De plugin heeft dat nodig om back-ups te controleren, voort te zetten en op te ruimen. Zonder die mogelijkheid is het doel niet bruikbaar. |
| Het doel vroeg om een pauze: het is bezet of kreeg te veel verzoeken. | Test de verbinding later opnieuw. |
| Het doel meldt dat er geen ruimte meer is. | Maak ruimte vrij op de server, of kies een map met meer ruimte. |
| Het doel heeft het verzoek geweigerd, of de overdracht is mislukt. | Kent de plugin de reden, dan staat die onder de melding: Het doel weigert uploads van deze grootte. De grens is bij het doel ingesteld. Of: Een ander programma heeft dit bestand op de server gereserveerd (WebDAV-lock). Anders helpt de regel Melding van het doel verder. |
Als de server doorverwijst
De plugin volgt geen doorverwijzing, omdat het wachtwoord anders naar een adres zou gaan dat je niet hebt ingevuld. De test mislukt, en onder de melding staat het nieuwe adres.
- De melding: het doel verwijst door naar een ander adres.
- Het nieuwe adres waarnaar de server doorverwijst.
Vul het nieuwe adres in als Adres van de map, als het het juiste is.
Als een upload te langzaam is
De plugin werkt in korte stappen. Bij de methode whole moet elk bestand binnen één stap aankomen. Een back-up naar zo’n doel splitst de plugin daarom in kleinere delen: hij rekent met de uploadsnelheid van het doel en de maximale duur van een stap en kiest een grootte tussen 1 MiB en 256 MiB. Het resultaat van de verbindingstest noemt die: Een back-up die naar dit doel gaat, wordt daarom in delen van hoogstens … gesplitst, op elk doel van die back-up.
- Het resultaat van de test: de verbinding werkt.
- De uploadmethode die de test heeft vastgesteld: elk bestand in één verzoek.
- De maximale grootte van de delen van een back-up die naar dit doel gaat.
Komt een bestand toch niet op tijd aan, dan geldt het doel in deze back-up na drie pogingen als mislukt. De melding daarbij: Een upload kwam niet aan voordat de tijd van een stap om was: de verbinding met het doel is daarvoor te langzaam. De plugin onthoudt daarna een lagere snelheid, en de volgende back-up krijgt kleinere delen. Test de verbinding van het doel opnieuw om de snelheid opnieuw te meten. Hoe lang een stap hoogstens duurt, bepaalt de instelling Maximale duur per stap: De plugin aanpassen aan je server.
Goed om te weten
- De back-ups staan op de server onder
<Adresse>/cloneworx-backup-<code>/<back-up>/. De map van de plugin hoef je niet aan te maken. - In zijn mappen plaatst de plugin de beschermingsbestanden
index.phpenindex.html, maar geen.htaccessen geenweb.config: een WebDAV-server leest de bestanden die bij hem staan. Op een WebDAV-doel beschermt de aanmelding bij de server de map. - Vraagt de server tijdens een back-up om een pauze, dan wacht de plugin zo lang als de server zegt, hoogstens vijf minuten, en probeert het daarna opnieuw.
- De plugin verwijdert bestanden een voor een. Een map verwijdert hij alleen als de server die als leeg weergeeft.
- Back-ups die alleen op een WebDAV-doel staan, download je niet via de plugin, maar met je WebDAV-programma of in de webinterface van de server. Herstel, controle en terugvinden lezen rechtstreeks van de server.
- Noemt de server de vrije ruimte, dan controleert de plugin vóór het schrijven van een back-up of die voldoende is. De tegel Doelen en ruimte in de weergave Uitgebreid toont de vrije ruimte alleen bij lokale mappen; bij een WebDAV-doel staat daar een streepje.
- Een proxy uit de
wp-config.phpgebruikt de plugin ook voor WebDAV.
Zie ook
- Welk doel past bij jou?
- De pagina “Doelen”
- De toegangsgegevens van een doel vernieuwen
- Back-ups op een doel controleren en resten opruimen
- Als een back-up mislukt of eindigt met waarschuwingen
Op de opdrachtregel
WP-CLI nog niet ingesteld? Zo installeer je WP-CLI.
Het wachtwoord accepteert de opdrachtregel niet; een WebDAV-doel stel je daarom in op de pagina Doelen. Al het overige kan ook met WP-CLI:
# Doelen met kenmerk en status tonen wp cloneworx-backup target list # De verbinding testen wp cloneworx-backup target test webdav-1 # Een plan aanmaken dat naar dit doel back-upt wp cloneworx-backup plan add --targets=webdav-1 --rhythm=daily --time=03:15 --name="Nachts" # De back-ups op dit doel controleren wp cloneworx-backup target check webdav-1 # Resten tonen (--dry-run) en opruimen wp cloneworx-backup target cleanup webdav-1 --dry-run wp cloneworx-backup target cleanup webdav-1