Kategorie: Web Development

DDoS durch den Google Bot

In fast 10 Jahren mit Travel-Dealz ist mir die folgende Situation schon mehrfach untergekommen: Man aktiviert irgendein neues Feature oder installiert ein neues Plugin und Tage, Wochen oder sogar Monate später stellt man ein Problem fest z.B. die ganze Seite wird nicht mehr oder nur sporadisch von Google indexiert oder die Auslastung des Servers steigt und steigt und steigt, obwohl nicht fiel mehr Traffic auf der Seite ist.

Weiterlesen „DDoS durch den Google Bot“

Tipp: 5.000$ AWS Guthaben abstauben

Amazon Web Services ist wohl der mit Abstand mächtigste Cloud Computing-Anbieter, kann aber schnell sehr teuer werden. Die Preisgestaltung ist meiner Meinung nach verdammt intransparent und meistens weiß man erst mit der ersten Rechnung wie teuer der Spaß ist.

Um die verschiedenen Services ausprobieren zu können, ohne in die Kostenfalle zu tappen, habe ich einen Tipp für Euch:

Weiterlesen „Tipp: 5.000$ AWS Guthaben abstauben“

WP CLI: Backup & Import in einem Befehl

Wer an seiner Website herumbasteln möchte, sollte das am besten in einer lokalen Entwicklungsumgebung machen und nicht auf dem Live-Server. Das gilt auch für WordPress!

Am besten funktioniert das, indem man eine Kopie der echten Website erstellt. Entscheidend ist hier vor allem die Datenbank. Legt man davon lokal eine Kopie an, hat man direkt den passenden Content an dem man z.B. das neue Theme ausprobieren kann.

Weiterlesen „WP CLI: Backup & Import in einem Befehl“

WordPress: Hierarchische Taxonomies wie Tags eingeben

WordPress bietet für Custom Taxonomies die Möglichkeit diese hierarchische anzuordnen. Das heißt, man kann für jeden Term wie bei einer Kategorie ein übergeordneten Term festlegen.

Wir nutzen bei Travel-Dealz hierarchische Taxonomies für Reiseziele. Und von diesen haben wir über 1.000 angelegt. Diese sind nach Kontinent → Land → Stadt angeordnet.

Weiterlesen „WordPress: Hierarchische Taxonomies wie Tags eingeben“

WordPress Permalinks: Datum aus URL entfernen & weiterleiten

WordPress war ursprünglich dafür gedacht ein digitales Tagebuch, einen Blog, zu führen. Doch davon sind die meisten mit WordPress betreibenen Seiten weit entfernt. An diversen Stellen in WordPress begegnet man diesem ursprünglichen Gedanken. Besonders in den Standardeinstellunen für Permalinks. Hier wird als Standardeinstellung die URL-Struktur für einen Beitrag aus dem Datum mit Jahr, Monat, Tag und dem Beitragstitel z.B. /2020/02/20/beispielbeitrag/ generiert. Perfekt für ein Tagebuch aber schlecht für eine Website wo man regelmäßig Änderungen an seinem Inhalt vornimmt um diesen aktuell zu halten.

Weiterlesen „WordPress Permalinks: Datum aus URL entfernen & weiterleiten“

WordPress Performance Hack: Cache direkt vom Webserver ausliefern lassen

Bei einem Seitenaufruf von einer WordPress-Seite wird von Haus aus bei jedem Aufruf PHP ausgeführt, die Datenbank abgefragt und schlussendlich die Antwort als HTML an den Nutzer gesendet. Egal, ob sich etwas an der Seite seit dem letzten Seitenaufruf geändert hat oder nicht.

Wenn die eigene Website nur eine Handvoll Aufrufe pro Tag hat, ist das kein Problem. Hat man aber plötzlich sehr viele Aufrufe in einer kurzen Zeit, ist der Server schnell überfordert und wird sehr schnell 503 Service Unavailable Antworten senden.

Weiterlesen „WordPress Performance Hack: Cache direkt vom Webserver ausliefern lassen“

Plugin Tipp: Automatische WordPress-Updates mit Benachrichtigungen

Ich betreue seit ein paar Monaten die Website für den Tanzclub Düsseldorf e.V. Vor meiner Zeit wurde dort Drupal eingesetzt und natürlich nach der Installation nie wieder geupdated und auch keine automatischen Backups erstellt. Was auf Dauert dann garantiert irgendwann passiert: Die Seite wurde gehackt.

Das sollte sich nicht wiederholen und neben regelmäßigen Backups war mir eins besonders wichtig: Automatische Updates von WordPress aber auch der verwendeten Plugins & Themes.

Weiterlesen „Plugin Tipp: Automatische WordPress-Updates mit Benachrichtigungen“

WordPress: Scripts & Styles von Plugins nur laden wenn wirklich notwendig

Nicht jeder Programmierer denkt bei der Entwicklung eines Plugin (aber auch Themes) daran, ressourcenschonend mit den eingebunden Scripts & Styles umzugehen. Statt die Assets nur bei Seitenaufrufen zu laden, wo sie auch wirklich verwendet werden, werden häufig alle Datein bei jedem Seitenaufruf geladen. Das ist nicht nur schlecht für die Performance beim Leser sondern kostet auch einfach Resourcen.

Ein gutes Beispiel ist das beliebte Contact Form 7 Plugin (es gibt bessere Kontakformular-Plugins, ich bin z.B. ein Fan von HTML Forms, aber darum soll es hier nicht gehen). Installiert und aktiviert lädt es bei jedem Seitenaufruf 1,61 KB Stylesheet und 14,10 KB (+94,60 KB jQuery als Abhängigkeit) Javascript. Ein Kontaktformular haben die meisten Websites aber nur unter /kontakt/ eingebunden. Es ist also zu 99% unnötig, dafür Bandbreite und Rechenzeit zu verschwenden.

Viel geschickter wäre es, Style & Scripts nur zu laden, wenn bei einem Seitenaufruf auch der Shortcode für ein Formular [contact-form-7] eingebunden ist.

Weiterlesen „WordPress: Scripts & Styles von Plugins nur laden wenn wirklich notwendig“