Benutzer-Werkzeuge

Webseiten-Werkzeuge


wp:allgemein

Allgemeine Themen rund um WordPress

Allgemeine Plattform zum Testen von WordPress und insbesondere von Plugins

Steht kein lokaler Server zum Installieren von WordPress zur Verfügung, kann das Online-Tool TasteWP.com helfen.

  • Ohne Registrierung kann man einfach so eine WordPress-Instanz erzeugen lassen, die 24 Stunden zur Verfügung steht.
  • Mit Registrierung (aber immer noch kostenlos) kann man bis zu 6 unterschiedliche Instanzen (also letztlich Websites) anlegen lassen und verwalten. Die Ablaufdauer beträgt 7 Tage.
  • Nach ersten Tests scheint man tatsächlich alles ausprobieren zu können, was auch auf einer echten Website möglich ist.
  • Ideal zum Vorabtesten von Plugins.

Seiten, die nur angemeldeten Nutzern zugänglich sind

Voraussetzung dafür, dass Rechte für den Zugang zu bestimmten Seiten vergeben werden können, ist das Vorhandensein eines PlugIns, mit dem Rollen verwaltet werden können. Ein Beispiel dafür ist das Members-PlugIn. Hier kann eingestellt werden, dass alle Nutzer, die z. B. der Rolle „Redakteur“ zugeordnet sind, Seiten mit dem Status „Privat“ ansehen können.

Das Problem besteht nun darin, private Seiten zugänglich zu machen. Das kann z. B. über das Hauptmenü geschehen. Beim Erstellen eines Menüs werden private Seiten jedoch nicht als Menüpunkte angeboten. Sie können aber trotzdem aufgenommen werden, und zwar indem man einen „individuellen Link“ als Menüpunkt in das Menü einfügt. Dazu kopiert man den Permalink der privaten Seite und fügt ihn als individuellen Menüpunkt-Link ein. Das ist schon alles.

Nun wird der Link zur privaten Seite im Menü angezeigt. Klickt ein nicht angemeldeter Nutzer den Menüpunkt an, kommt die Meldung, dass nichts gefunden wurde. Einem angemeldeten Nutzer mit der Rolle „Redakteur“ wird dagegen der Inhalt der Seite angezeigt.

Blogbeiträge auf statischen Seiten anzeigen

  • Das scheint im neuen Gutenberg-WP einfach zu gehen, indem man einen entsprechenden Block auf einer Seite anlegt.
  • In älteren Versionen muss mit einem PlugIn gearbeitet werden, z. B. „Shortcodes Ultimate“. Damit können sogar private Beiträge zur Ansicht gebracht werden.

Meldung zu kritischem Fehler auf der Seite

  • Es kann passieren, dass z. B. nach dem Aktualisieren eines Plug-Ins eine Meldung zu einem kritischen Fehler auf der Site erscheint und man nicht mehr an den Inhalt der Site herankommt. Dann ist eine mögliche Lösung, beim üblichen Login dranzuhängen:
    • /wp-admin/plugins.php
  • In den meisten Fällen kommt man auf diese Weise an die Plugins heran und kann das verdächtige Plugin deaktivieren.

Komplette WP-Website sperren (deaktivieren)

Dazu sind gute Tipps auf der Seite https://fastwp.de/magazin/wartungsmodus-wordpress-seite-deaktivieren/ zu finden. Die Quintessenz besteht in drei Möglichkeiten:

  • spezielle Maintenance-Datei in FTP-Verzeichnis einfügen
    • Name der Datei: .maintenance
    • Ort: direkt im Root-Verzeichnis der WordPress-Installation (per FTP-Programm hochladen)
    • Inhalt der Datei: <?php $upgrading = time(); ?>
    • Wenn Wartungsarbeiten abgeschlossen, Datei löschen.
  • php-Code der Website innerhalb WP ändern
  • Plugin verwenden

Aus meiner Sicht ist die erste Möglichkeit die beste, weil schnellste und sicherste. Auch nicht schlecht ist das Plugin „Slim Maintenance Mode“: wird es aktiviert, sperrt es die Website und zeigt eine Meldung an: „Wartungsarbeiten“; wird es deaktiviert, läuft die Seite wieder normal.

Bild im Frontend bei Klick vergrößert darstellen

  • kann nur in Beiträgen oder Seiten eingestellt werden, hat also nur lokale Bedeutung
  • klappt nur, wenn der Link zum WordPress-Verzeichnis für Bilder hinterlegt ist
  • Einstellung (nachdem Beitrag oder Seite zur Bearbeitung aufgerufen wurde):
    • auf Bild klicken
    • Bleistift wählen, um Bild zu bearbeiten
    • im aufgehenden Fenster bei „Link zur“ wählen: „Mediendatei“
    • OK

Zahl der 404-Fehlermeldungen verringern

Diese Fehlermeldungen können von falschen/nicht aktualisierten Permalinks herrühren. Daher sicherheitshalber immer wieder mal <Einstellungen - Permalinks> wählen und einfach nur auf „Änderungen speichern“ klicken, auch wenn keine Änderungen vorgenommen wurden. Dadurch werden alle Permalinks geprüft und aktualisiert.

Serverüberlastung

Vom Webhoster kam die folgende Mitteilung:

aktuell mussten wir eine massive Überlastung des Servers feststellen, welche auf Ihre Webseite(n) als Verursacher zurückgeführt werden konnte.
Grund für die Überlastung waren sehr viele Selbstincludes Ihrer Seiten im Account "xyzabc001". Diese scheinen sich gegenseitig einzubinden.
Um die Erreichbarkeit des Server sicherstellen zu können, haben wir dies unterbunden und Ihre ".htaccess"-Datei durch folgende Zeilen erweitert:
order allow,deny
allow from all
deny from 85.13.nnn.nnn
Ich würde Sie bitten, diese bis auf Weiteres bestehen zu lassen, da sonst erneut Erreichbarkeitsprobleme Ihrer und anderer Kundenseiten auftreten können. Prüfen Sie auch weshalb Ihre Skripte diese Einbindungen vornehmen.

Wie sich herausstellte, waren die RSS-Feeds, die von den verbundenen Sites geholt wurden, schuld an der Überlastung. Anscheinend funktionierte die Feed-Abfrage nicht mehr, seit ich auf die aktuelle WP-Version umgestellt hatte. Schnelle Lösung: Sämtliche Widgets mit RSS-Feed-Abfragen der verbundenen Sites gelöscht und durch einfache Menüpunkte (in einem Navigationsmenü, das wieder als Widget eingesetzt wurde) ersetzt.

Ein Grund für die Überlastung könnte auch ein Bot-Angriff gewesen sein. Wenn die verbunden Seiten vom Bot immer wieder aufgerufen wurden, wurden jedes Mal die Feeds aktualisiert. Das dürfte jetzt, wo die Feed-Abfragen nicht mehr existieren, kein Problem mehr sein.

Antwort von all-inkl auf meine Anfrage zur Vermeidung von Bot-Angriffen

Allgemein können Sie Bots über eine sogenannte robots.txt aussperren. Einen sehr guten Artikel finden Sie unter folgenden Link dazu:

https://www.sistrix.de/frag-sistrix/google-index-google-bot-crawler/wie-kann-ich-dem-google-bot-das-crawlen-meiner-website-verbieten/

Eine andere Möglichkeit besteht darin die Zugriffe per „geoip block“ zu sperren. Hierbei legen Sie in Ihrer .htaccess Datei fest welche IP-Adressen nicht auf Ihre Domain zugreifen dürfen. Sie können auch komplette Länder z.B. China und Russland aussperren.
Die IP-Adressen können Sie über Ihr Accesslog (sofern vorhanden) prüfen. Dieses finden Sie in Ihren FTP Verzeichnis im Ordner „Logs“.
Um nur einzelnen Ländern z.B. aus dem deutschsprachigen Bereich den Zugriff zu Ihrer Seite zu gewähren, fügen Sie in die .htaccess Datei folgende Einträge ein:

GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE DE AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE AT AllowCountry
SetEnvIf GEOIP_COUNTRY_CODE CH AllowCountry
Order allow,deny
Allow from env=AllowCountry
Deny from all

Wenn Sie einem oder mehreren Ländern den Zugriff verweigern wollen, dann muss der Eintrag in der .htaccess Datei so lauten:

GeoIPEnable On
SetEnvIf GEOIP_COUNTRY_CODE CN BlockCountry
SetEnvIf GEOIP_COUNTRY_CODE RU BlockCountry
Order allow,deny
Allow from all
Deny from env=BlockCountry

Um bestimmte einzelne IPs oder IP-Gruppen von Ihrer Domain auszuschließen, tragen Sie bitte in der .htaccess Datei ein:

deny from 123.45.6.7 - (direkt die gesamte IP 123.45.6.7 wird ausgesperrt.)
deny from 012.34.5. - (Alles nach den ersten drei IP Gruppen 012.34.5. wird gesperrt.)
deny from .hackerdomain.com - es wird nur ein Domainname und zwar hackerdomain.com gesperrt
allow from all -Alle anderen Zugriffe sind erlaubt.

Auf neue PHP-Version umstellen

  • Zunächst in KAS-Verwaltung von all-inkl gehen und dort die neue PHP-Version wählen.
  • Zusätzlich per FTP die Datei .htaccess herunterladen und die folgende Zeile ändern:
  • AddHandler php74-cgi .php
  • Hier muss 74 für die PHP-Version 7.4 stehen und entsprechend bei anderen PHP-Versionen.

Speicherzuweisung

Um Bot-Angriffe zu bemerken und abzuwehren, gibt es einige Anti-Bot-Plugins. Eines heißt „Stop Bad Bots“. Dieses Plugin prüft u.a. auch, wie viel Speicher die Website benötigt und wie viel ihr zugewiesen ist.

  • Die Standardzuweisung für alle WP-Websites beträgt 40 MB.

Anscheinend wird aber schon bei wenigen Seiten, einigen Bildern und wenigen instalierten Plugins diese Speichergröße überschritten.

Mit folgender Anweisung kann der zur Verfügung stehende Speicher vergrößert werden (in diesem Beispiel auf 128 MB):

To increase the WordPress memory limit, add this info to your file wp-config.php (located at root folder of your server)
(just copy and paste):
define('WP_MEMORY_LIMIT', '128M');
before this row:
/* That's all, stop editing! Happy blogging. */
If you need more, just replace 128 with the new memory limit.
To increase your total server memory, talk with your hosting company. 
  • Das Standard-Maximum der Speicherzuweisung beträgt für alle WP-Websites 256 MB. Es kann nur nach Rücksprache mit dem Webhoster erhöht werden.

Cloudbasierte Lösungen zur Virenabwehr

Eine sehr gute Möglichkeit, Viren- und Bot-Attacken abzuwehren, scheinen cloudbasierte Lösungen zu sein. Eine solche Lösung bietet z. B. Sucuri.

Geschwindigkeit einer Website messen

wp/allgemein.txt · Zuletzt geändert: 2024/04/03 20:30 von walter