Die Investition in Bildung ist essentiell – ohne diese drei Bücher werden eure Websites gnadenlos scheitern!
Remarketing kurz erklärt – ein Tool das deinen Umsatz durch die Decke schießen lässt
Liebe Leser und Leserinnen,
ich habe in einem meiner vergangenen Facebook-Posts das Remarketing erwähnt. Was das ist möchte ich dir heute erklären.
WordPress Backup wieder einspielen
Nach den letzten beiden Beiträgen wissen wir nun wie wir ein vollständiges Backup unserer WordPress Installation machen können – und das ganz automatisch!
Falls ihr die Beiträge verpasst habt könnt ihr sie euch hier durchlesen:
Doch heute geht es um das worst-case-Szenario!Lies weiter
Cronjob erstellen – so geht’s!
Nach dem Beitrag der letzten Woche sollte jeder von euch in der Lage sein sich sein eigenes, persönliches Backup-Script zu erstellen.
Heute werde ich euch beweisen, dass das was ich euch im letzten Beitrag versprochen habe, auch tatsächlich funktioniert!
Wir werden unsere Datei namens Backup.sh vom Server starten lassen. Um noch einen Schritt weiter zu gehen, werden wir mit Hilfe eines Cronjobs einen Zeitplan festlegen, zu welchem das Script automatisch ausgeführt werden soll.
Am Ende dieser Anleitung solltet ihr also durch euren Cronjob täglich ein neues Backup erstellt bekommen. Dieses wird dann auf eurem FTP-Server bereitstehen bis zur nächsten Woche, wo wir es dann wieder einspielen werden.
Also los! Cronjob erstellen – so gehts!
Anleitung zur Einrichtung eines Cronjobs – los gehts!
Falls ihr einen Mac besitzt, könnt ihr gleich mit Hilfe des Terminals durchstarten! Einfach in Spotlight „Terminal“ eingeben und drauf los tippen.
Seit ihr jedoch im Besitz eines Windows-PCs ist es schon nicht mehr ganz so einfach – allerdings auch nicht besonders schwer.
Es kursieren zwar Gerüchte, dass Windows in Zukunft auch SSH in seine PowerShell integrieren wird, dies ist laut meines Wissens allerdings noch nicht geschehen – also kommt ihr um einen Client eines Drittanbieters nicht herum. PuTTY ist sehr berühmt und wird von vielen Nutzern eingestezt.
Ich könnt den Client auf der Seite des Herstellers downloaden -> PuTTY downloaden
Sind nun alle Vorbereitungen getroffen, können wir auch schon loslegen:
Verbindung mit eurem Server via SSH
Klärt bitte vorher mit eurem Server-Provider ab, ob SSH in eurem Tarif inkludiert ist und wie ihr an die Zugangsdaten rankommt. Diese werden im folgenden Abschnitt nämlich benötigt.
Öffnet das Terminal und gebt folgenden Befehl ein:
ssh USER@HOSTNAME
Beachtet bei der anschließenden Passworteingabe, dass euch das Passwort weder in Buchstaben, noch in den üblichen „Sternchen“ angezeigt wird. Das hat mich anfangs oft verwirrt, ist allerdings nur Gewöhnungssache.
Einsicht in den Crontab
Hat mit der Verbindung via SSH alles geklappt, befinden wir uns nun auf unserem Webserver. Nun wollen wir erstmal überprüfen ob bereits Cronjobs angelegt wurden, und falls ja, was es mit diesen auf sich hat.
Wir geben also folgendes in unser Terminal ein um eine Liste aller Cronjobs zu erhalten:
crontab -l
Wir erhalten nun eine Datei, welche in etwa so aussehen sollte:
Erstellung eines neuen Cronjobs
Wie wir nun in unserem Terminal sehen, können … sehen wir nichts. Alle Zeilen mit einer Raute davor, werden als Kommentare gewertet und somit nicht vom Server berücksichtigt. Es wurden also noch kein Cronjob angelegt – doch das werden wir nun ändern.
Gebt folgenden Code in euere Kommandozeile ein:
crontab -e
Nun solltet ihr die selbe Datei nocheinmal sehen, diesmal jedoch mit einem kleinen Unterschied. Nach den ganzen Kommentaren, sollten lauter kleine Wellen abgebildet sein. Jede dieser „Wellen“ steht für einen Cronjob, welchen ihr nun anlegen könnt.
Mac OS verwendet noch immer VI zum Anzeigen der Crontabs, hier müsst ihr vor der Bearbeitung die Taste „i“ drücken um einen neuen Cronjob anlegen zu können!
Ob und wie das bei einem Client wie beispielsweise PuTTY funktioniert, weiß ich leider nicht. Doch probieren geht ja bekanntlich über studieren!
Wir springen nun also ans Ende der Datei und beginnen zu tippen. Zu aller erst müssen wir einen Zeitplan festlegen, in welchem Intervall wir unseren Cronjob ausführen wollen.
Hierbei helfen uns die zahlreichen Kommentare im Crontab schon um einen groben Überblick zu erhalten. Ich habe sie euch hier unten noch einmal deutlich zusammengefasst.
Zeitplan eines Cronjobs
Wir haben insgesamt fünf Stellen, welche wir mit Zahlen belegen können.
- Die erste Stelle gibt die Minuten an.
Bsp: Es soll ein Cronjob um 00:30 ausgeführt werden -> Schreibt an dieser Stelle die 30! - Die zweite Stelle gibt die Stunden.
Bsp: Es soll ein Cronjob um 00:30 ausgeführt werden -> Schreibt an dieser Stelle eine 0! - Diese Stelle gibt einen bestimmten Tag im Monat an.
Bsp: Ein Cronjob soll immer am Ersten eines Monats ausgeführt werden -> Schreibt an dieser Stelle eine 1! - Diese Stelle gibt das Monat an.
Bsp: Ein Cronjob soll nur im Dezember ausgeführt werden -> Schreibt an dieser Stelle eine 12! - Diese Stelle gibt den Wochentag an.
Bsp: Ein Cronjob soll jeden Montag ausgeführt werden -> Schreibt an dieser Stelle eine 1!
Ein Stern (*) steht für „immer“. So könnt ihr Beispielsweise jeden Sonntag ein Backup um 01:30 erstellen lassen in dem ihr die fünf Stellen folgendermaßen besetzt: 30 1 * * 7
Der eigentliche Cronjob
Wir wollen in unserer Anleitung ein tägliches Backup um 02:30 erstellen lassen. Die fünf Stellen besetzen wir also folgendermaßen: 30 2 * * *.
Nach dem Zeitplan muss der eigentliche Cronjob folgen. Dieser besteht aus einem Shell-Befehl und in unserem Fall muss dieser lediglich unsere Datei, welche wir im letzten Beitrag erstellt haben, ausführen.
Hierfür reicht es aus wenn wir den Pfad zu unserem Script angeben:
/ROOT-VERZEICHNIS/Backup/Backup.sh
Vergesst nicht das ROOT-VERZEICHNIS durch eueren persönlichen Pfad zu ersetzen. Wo ihr diesen herbekommt, habe ich schon letztes Mal erklärt.
Hier also der gesamte Cronjob für Copy&Paste:
30 2 * * * /ROOT-VERZEICHNIS/Backup/Backup.sh
Verlassen des Crontabs
Um das VI zu verlassen, reicht ein simpler Drücker auf die Escape-Taste. Um euren Cronjob nun zu speichern und zu installieren ist folgender Code von nöten:
:wq
Beenden der SSH Verbindung
Habt ihr folgende Erfolgsnachricht bekommen: crontab: installing new crontab
, könnt ihr die Verbindung mit eurem Server auch schon trennen. Dies geschieht mit folgendem Befehl:
exit
Zusammenfassung
Das waren jetzt viele Infos auf einmal. Diejenigen die schon lange ausgestiegen sind können hier nochmal die Code-Zeilen nacheinander lesen.
ssh USER@HOSTNAME
crontab -e
30 2 * * * /ROOT-VERZEICHNIS/Backup/Backup.sh
:wq
exit
Hier seht ihr nun, dass es eigentlich garnicht so kompliziert ist einen Cronjob einzurichten. Es reichen schon fünf simple Code-Zeilen und alles ist fertig installiert.
Nächste Woche werde ich euch zeigen, wie ihr ein solches Backup wieder einspielen könnt, wenn wirklich einmal etwas schiefgehen sollte.
Bis dahin, wünsche ich euch eine schöne Woche und viel Spaß bei der Erstellung eures ersten Cronjobs.
Euer Alex
WordPress Backup per Cronjob – sicher unterwegs sein!
Hallo Leute,
ich hoffe, dass die meisten von auch aus reiner Vorbeugung auf diesen Beitrag geklickt haben und nicht aus dem Grund, weil ihr gerade eure gesamte WordPress-Installation verloren habt!
Täglich werden Millionen von Websites gehackt, die meisten Angriffe kommen von sogenannten „Bots“, was stellvertretend für „Roboter“ steht.
Sie werden von Menschen programmiert und dann ins Netz geschickt um bei jeder Website bei der sie vorbeikommen einmal ihre gelernten Hackerangriffe auszuprobieren. Websitebetreiber, die sich dessen bewusst sind, können ihre Seite mit relativ simplen Methoden gegen solche Angriffe absichern. Dazu kommt auch mit Sicherheit einnmal ein Blogpost.
Doch heute geht es um das berühmte „Was wäre, wenn …“
Was wäre, wenn ihr Opfer eines Hack-Angriffs wurdet und eure Seite völlig durcheinander gebracht wurde?
Möglicherweise wurden in eurem Namen unvertretbare Artikel auf eurem Blog gepostet oder euer Passwort wurde geändert, wodurch ihr nicht mehr in euer Backend gelangen könnt…
Mögliche Szenarien gibt es haufenweise und die meisten mögen auch mit ein paar Stunden Arbeit wieder korrigiert werden, aber rufen wir uns nocheinmal das „was wäre, wenn …“ auf.
Was wäre, wenn es eine Möglichkeit gäbe, nach einem Hacker-Angriff eine simple Code-Zeile ins Terminal einzugeben und schon wäre ein vollständiges Backup vom letzten Tag wieder eingespielt worden und ihr könnt wieder weiter an eurer Seite arbeiten?
Das wäre doch der Traum. Somit könnte man ganz unbesorgt bestimmte Sachen ausprobieren und falls einmal etwas schiefgehen sollte – einmal schnell ein paar Wörter eingetippt und schwupps, habt ihr eure alte Seite wieder.
Ich habe diese Methode bei blogs54.de gesehen und wollte sie euch nicht vorenthalten.
Nun, ich zeige euch heute wie ihr genau das anstellen könnt! Nach dieser viel zu langen Einleitung, machen wir uns auch wirklich ans Werk!
Einrichtung eines Backup-Ordners
Im ersten Schritt verbindet ihr euch mit eurem FTP-Server über einen FTP-Client, wie zum Beispiel FileZilla und erstellt (am besten einen Ordner über eurer WordPress Installation) einen Ordner welchen ihr schlicht und einfach „Backup“ nennt.
Ich ging noch einen Schritt weiter und habe in meinem Backup-Ordner noch zwei weitere Ordner für FTP und MySQL erstellt. Dies hilft mir einen besseren Überblick zu behalten.
Erstellung einer .htaccess
Auch eure Backups enthalten sensible Daten! Darum empfehle ich euch in jedem Ordner eine .htaccess anzulegen.
Diese muss auch nicht besonders viel können. Einfach folgenden Code kopieren, in ein Text-Dokument einfügen und als .htaccess speichern.
deny from all
Ermittlung eures ROOT-Verzeichnises
Euer ROOT-Verzeichnis benötigt ihr für das untenstehende Script. Dieses ist auch kinderleicht ermittelt.
Erstellt einfach eine root.php mit folgendem Inhalt:
Ladet diese Datei mittels FTP-Client direkt in eure WordPress-Installation und surft sie in eurem Browser an:
http://euredomain.at/root.php
Lasst das Browserfenster am Besten offen. Ihr werdet diesen Pfad im weiteren Verlauf dieser Anleitung noch öfter benötigen!
Ersetzt einfach jedes „ROOT-VERZEICHNIS“ in den Code-Zeilen durch euren persönlichen Pfad.
Erstellung der Updates via Shell-Script
Ja, ich weiß, die Überschrift lässt komplizierten Code erahnen! Ich müsst jedoch nicht mehr machen als den folgenden Code in einem Text-Editor eurer Wahl (Editor, Dreamveawer, Coda2, Notepad++, etc), jedoch NICHT in Word(!) zu kopieren.
Am Anfang eures Scripts muss unbedingt folgender Code stehen! Ansonsten wird das Ganze nicht funktionieren!
#!/bin/bash
Um eure gesamte WordPress-Installation zu sichern benötigt ihr folgenden Code:
Dieser ermöglicht es euch, alle Dateien zu komprimieren und als .tar.gz in eurem Backup-Ordner zu sichern.
Mithilfe des „mysqldump“ Befehls könnt ihr eure Datenbank exportieren und ebenfalls in eurem Backup-Ordner sichern.
Denkt daran, eure persönlichen Zugangsdaten im Script einzusetzen. (HOSTNAME, DB-BENUTZER, DB-PASSWORT & DB-NAME)
Backups nach 10 Tagen automatischen löschen
Falls ihr dieses Script nun per Cronjob täglich ausführen lässt, wird jeden Tag ein neues Backup mit dem aktuellen Datum generiert.
So wird ziemlich schnell der gesamte Speicherplatz aufgebraucht und irgendwann kann der Server kein Backup mehr erstellen, da ihm dafür schlicht und einfach der Speicher fehlt.
Darum fügen wir noch zwei Zeilen Code hinzu um so alle Backups automatisch zu löschen, die älter sind als 10 Tage.
Gesamtes Shell-Script
Hier habe ich euch übersichtshalber noch einmal den gesamten Code in ein File hineinkopiert:
Upload der Backup.sh auf euren FTP-Server
Speichert euer Dokument als Backup.sh auf eurem Desktop und ladet es anschließend in den, vorhin erstellten, Backup-Ordner.
Nun sind alle Vorbereitungen getroffen.
Wir müssen unserem Server lediglich noch mitteilen, dass er dieses Script jeden Tag (am besten so gegen 02:30 wegen geringer Zugriffszahlen) ausführen soll. Dies geschieht mit Hilfe eines sogenannten „Cronjobs“.
Wie genau ihr per SSH auf euren Server zugreifen und dort Cronjobs erstellen könnt, erfahrt ihr jedoch erst im nächsten Blogpost – also nächsten Freitag!
Bis dahin, viel Erfolg bei der Erstellung eurer persönlichen Backup.sh.
Euer Alex
WordPress Buch – eine Pflichtlektüre!
WordPress – ein komplexes Gebiet!
WordPress ist sehr vielseitig! Es kann von einem normalen Blog, bis hin zum großen, erfolgreichen Webshop ausgebaut werden.Lies weiter
WordPress Backend verständlich erklärt
Das WordPress Backend – es ist so simpel und doch so genial!
WordPress installieren – egal ob lokal oder im Web
WordPress installieren – beim ersten Mal oft eine knifflige Aufgabe. Wir zeigen euch heute wie ihr das CMS auf eurem lokalen Server oder aber auch auf einem ganz normalen Webhost eines großen Anbieters installieren könnt und auf was ihr achten müsst.Lies weiter
WordPress Anleitung – der eigene Server 100% kostenlos!
WordPress sollte nun allen ein Begriff sein. Falls ihr völlige Neueinsteiger in das Thema Content Management Systeme seid, empfehle ich euch unsere letzten vier Beiträge zu lesen um ein gewisses Grundwissen aufzubauen.Lies weiter
WordPress Themes – die fertige Website mit einem Klick!
Im letzten Beitrag haben wir geklärt wozu Plugins fähig sind und wo man diese herbekommt. Falls ihr diesen Beitrag verpasst habt, verlinke ich ihn euch hier.
Doch heute geht es um ein ganz anderes Thema. Das Wort Thema ist dabei schon ein ganz gutes Stichwort – die Rede ist nämlich von sogenannten Themes.