Die Zeit rennt, die Technik auch. Code wird umfangreicher, Software leistungsfähiger. Deshalb steigen die Performance-Anforderungen von Software an die ihr zu Grunde liegenden Hard- und Softwarekomponenten auch kontinuierlich an. So auch bei dem beliebten und weit verbreiteten CMS WordPress, auf dem inzwischen mehr als 50% der weltweiten Websites basieren. Installation und Betrieb einer professionellen WordPress-Webseite sind jedoch an eine Reihe von technischen WordPress Voraussetzungen gekoppelt, die für den sicheren und performanten Betrieb von WordPress-Websites erfüllt werden müssen. Andernfalls kann der Funktionsumfang von WordPress nicht vollständig genutzt werden oder Performance und Sicherheit einer WordPress-Installation sind empfindlich gefährdet.
Um das zu verhindern, listen wir in dieser Übersicht die jeweils aktuellen WordPress Voraussetzungen auf und aktualisieren die technischen Details, sobald sich signifikante Änderungen in den Voraussetzungen oder Empfehlungen für den Betrieb von WordPress-Webseiten verändern. Wie du selber eine Website mit WordPress erstellen kannst, erfährst du in dieser Anleitung.
Die hier gelisteten WordPress Voraussetzungen stellen auch die Mindestanforderung dar, die wir an die Umsetzung unserer WordPress-Services für Firmen und Selbständige stellen. Das bedeutet, dass wir für die Umsetzung unserer Leistungen bestimmte Voraussetzungen fordern, damit die von uns entwickelten und/oder betreuten WordPress-Firmenwebsites, Online-Shops oder weitere Komponenten auf WordPress-Basis auch einwandfrei laufen können.
Die Voraussetzungen gelten insbesondere für die folgenden WordPress-Services:
- WordPress Main.Package für Installation + Einrichtung einer professionellen WordPress-Firmenwebseite
- WooCommerce Main.Package für Installation + Einrichtung einer vollständigen Online-Shop Lösung mit WordPress und WooCommerce
- WordPress Business Package für den Aufbau einer vollständigen WordPress-Plattform inkl. Online-Shop,Newsletter-Integration sowie Optimierungen für SEO, Sicherheit und Performance
- Weitere technische und inhaltliche Voraussetzungen finden sich jeweils in den Produktdetails
Aktuelle WordPress Voraussetzungen im Überblick [Stand: 30.07.2020]
Halten wir das Ganze einmal kurz. Die grundlegenden WordPress Voraussetzungen sind nicht sonderlich anspruchsvoll. Grundsätzlich läuft das Content Management System mit all seinen Komponenten auf jedem modernen Webserver, wenn der Hoster die Wartung und Pflege der Hard- und Software nicht völlig vernachlässigt. Nach den aktuellen WordPress-Requirements benötigt WordPress lediglich:
- Eine PHP Version ab 7.4 oder höher
- MySQL in der Version 5.6 oder höher, alternativ MariaDB in Version 10.1 oder höher
- HTTPS-Unterstützung über ein SSL-Zertifikat
- Eine Webserver-Software mit aktueller Version von Apache oder Nginx, wesentlich ist aber eine Unterstützung von MySQL und PHP.
Das sind prinzipiell schon die grundlegenden WordPress Voraussetzungen, die für eine Installation der Software erfüllt werden müssen. Ist das der Fall, lässt sich WordPress i.d.R. ohne technischen Probleme installieren. Unser Hosting-Partner All-Inkl.com* erfüllt auch bei seinen günstigen Einsteiger-Paketen alle Voraussetzungen für WordPress.
Wichtiger Hinweis: Der Vollständigkeit halber sei erwähnt, dass WordPress auch mit älteren Versionen von PHP und MySQL lauffähig ist, z.B. mit PHP 5.2.4+ und MySQL 5.0+. Allerdings haben diese Versionen das Support-Ende erreicht und werden für den Livebetrieb nicht mehr empfohlen, da in beiden Versionen Sicherheitslücken existieren, die eine WordPress-Installation unnötig anfällig für Schadsoftware und Angriffe machen. Mehr Informationen zur WordPress-Sicherheit findest du in unserem WordPress Security Guide.
Wenn du dir nicht hundertprozentig sicher bist, ob dein Webserver, Hosting-Anbieter oder Hosting-Paket die aktuellen WordPress Voraussetzungen für die eigenständige Installation von WordPress oder die Umsetzung unserer WordPress-Services erfüllt, kontaktiere einfach unseren WordPress-Support. Wir beraten dich gerne bei der Anforderungsermittlung und der Auswahl geeigneter Hosting-Anbieter für WordPress.
WordPress Voraussetzungen für mehr Performance und Sicherheit
Selbst wenn die technischen Grundvoraussetzungen mit Bravour erfüllt sind, heißt das noch längst nicht, dass damit auch ein kommerziell erfolgreicher Betrieb einer Webseite möglich ist. Und kommerzieller Erfolg beginnt bereits auf technischer Ebene, indem unsere Infrastruktur insbesondere mit
hoher Sicherheit vor
- Hacker-Angriffen
- Sicherheitslücken
- Compiler-Fehlern
- Server-Ausfällen
- Datenverlust
sowie maximaler Performance bei
- Webseiten-Ladezeit
- Server-Antwortzeit
- File-Upload und Download
- Zugriffsgeschwindigkeit auf Ressourcen
- und der Abarbeitung von Rechenprozessen
auffahren kann. Erst wenn diese technischen Komponenten auf einem hohen Sicherheits- und Performance-Niveau gewährleistet werden können, ist der professionelle Betrieb einer Webseite mit all seinen Zielen für Wirtschaftlichkeit, IT-Sicherheit und Datenschutz erfüllt. Und genau diese Komponenten schauen wir uns jetzt im Detail an.
Server-Typ (Shared / Dediziert)
Der Server-Typ ist eine der wichtigsten WordPress Voraussetzungen, denn die Wahl des Server-Konzeptes entscheidet zumindest indirekt über die meisten der nachfolgenden Hardware-Voraussetzungen. Dabei ist allerdings nicht der eigene Home- oder Media-Server im opulent ausgestatteten Weinkeller gemeint, sondern ein extern gehosteter Webserver bei einem spezialisierten Hosting-Anbieter. Hoster teilen ihre Webserver-Angebote in den meisten Fällen in zwei Hosting-Konzepte auf:
- Shared Hosting
- Dedizierte Webserver
In Shared-Hosting Konzepten wird ein einzelner Webserver auf mehrere Kunden aufgeteilt . Das heißt, dass sich eine bestimmte Anzahl an Kundenaccounts samt all ihren Domains, Datenbanken, Verzeichnissen, Webserver-Zugriffen und Nutzlasten eine Server-Hardware teilen („shared“). Demnach müssen die Hardware-Komponenten wie CPU, RAM oder Festplatte(n) den primären Teil aller Rechen-, Zugriffs- und Speicherprozesse, die durch die unterschiedlichen Kunden ausgelöst werden, parallel verarbeiten. Dass das Konzept also enorm zu Lasten der Performance geht, sollte einleuchten. Dafür sind die Shared-Hosting-Konzepte einsteigerfreundlich und günstig. Ein Referenzwert für die Belastung eines Server ist die „Anzahl der Kunden pro Server„, die der Hoster i.d.R. bei seinen günstigen Einsteiger-Tarifen für Webserver angibt. Allerdings ist dieser Wert auch nur aussagekräftig, wenn man dazu auch die jeweilige Hardware-Spezifikation des Servers heranzieht.
Dedizierte Webserver-Konzepte fungieren als Komplement zur neumodernen „Wir-teilen-alles-Mentalität“. Allerdings lassen sich die Hoster ihre dedizierten Server natürlich auch bezahlen. Denn wenn lediglich ein einzelner Kunde mit seinen Domains, Daten und übriger Nutzlast einen Webserver beansprucht, ist der Server in den meisten Fällen nicht vollständig ausgelastet. In vielen Fällen sogar nicht einmal ansatzweise. Dafür steht die gesamte Rechenleistung eines dedizierten Servers dann aber auch für eine geringe Anzahl an Ressourcen zur Verfügung und kann so die maximale Performance liefern, wenn alle weiteren Komponenten entsprechend auf den Webserver abgestimmt sind.
Performante Shared-Hosting-Pakete lassen sich i.d.R. schon ab 5 – 10 Euro / Monat buchen. Für die meisten kleinen Firmen-Webseiten, Blogs oder Online-Shops reicht das vollkommen aus. Je nach Einsatzzweck kann aber auch sehr schnell der Umstieg auf einen dedizierten Server sinnvoll sein und erheblichen Performance-Zuwachs bringen. Hier sollte man aber mindestens 50-100 Euro / Monat aus seinem Liquiditätsplan rausbrechen können, um den Betrieb eines dedizierten Webservers finanzieren zu können. Wie immer gilt für Business-Lösungen: Nach oben gibt es keine Grenzen, unten aber schon.
Serverstandort
Was für den Getränke-Kühlschrank beim WM-Finale gilt, kann für einen Serverstandort nicht verkehrt sein. Hier gilt: Je näher desto besser! Logisch: Denn je dichter ein Webserver am Nutzer (Client) einer zugehörigen Webseite lokalisiert ist, desto kürzer ist auch der Weg, den die digitalen Bits und Bytes über die physische Leitung zurücklegen müssen. Auch wenn dieser Faktor in Zeiten von Highspeed-DSL und Glasfaser-Breitbandausbau nicht mehr von höchster Relevanz sind, behält die grundlegende Idee hinter einem optimal gewählten Serverstandort seine Bedeutung – insbesondere, wenn ich mehrsprachige WordPress-Webseiten betreibe, die Nutzern aus den verschiedensten Winkeln der Welt zugänglich sein sollen.
Dabei ist aber weniger der einzelne Nutzerstandort relevant, als die Gesamtheit des Traffics ingesamt. Kommt der primäre Anteil des Traffics aus Deutschland, ist es auch durchaus sinnvoll, den Serverstandort in Deutschland zu wählen. Liegen die Daten der Webseite auf einem Server in New York, müssten sämtliche Anfragen der (deutschen) Nutzer erst über mehrere Internet-Knotenpunkte und die massiven Überseekabel in das Land mit dem selbstverliebten Präsidenten geleitet werden, bevor der Webserver die Anfragen der Clients abarbeiten kann. Diese Verzögerung beträgt in der Praxis zwar meistens nur wenige Millisekunden – die können bei einer Performance-Optimierung aber den entscheidenden Anteil ausmachen.
Ist unser Webserver beispielsweise über ein Peering unseres Hosters und der Zwischenknoten am Internet-Knotenpunkt DE-CIX Hamburg oder Frankfurt angebunden, wird der eingehende (Daten-)Traffic (beispielsweise aus Deutschland) über eine bestimmte Anzahl an Hops (Netzwerk-Knotenpunkten) zum Zielort, also dem eigentlichen Serverstandort (hier Hamburg), geleitet.
Je geringer die Anzahl an Netzwerkknoten zwischen dem anfragenden Client und dem Host ist, desto schneller ist auch der Transport der Datenpakete bzw. die Antwortzeit des Webservers. Deshalb ist der anfragende Client aus München in unserem Beispiel deutlich schneller am Ziel, als beispielsweise ein Client aus New York, der auf unseren Webserver in Hamburg zugreifen will. Hier sind deutlich mehr Netzwerkknoten zu absolvieren, was zusätzliche Zeit kostet. Zumindest in der Theorie.
Denn in der Praxis hängt die Wahl der Hops von mehren Faktoren ab, insbesondere von der Netzwerkinfrastruktur des jeweiligen Internet-Service-Providers (ISP). Mit dem Diagnosetool Traceroute lassen sich Hop-Routen vom anfragenden Client bis zum angefragten Host nachverfolgen. Das Tool ist auf MacOS und weiteren Linux-Distributionen bereits vorinstalliert und lässt sich einfach über die Konsole mit traceroute host starten(„host“ durch IP oder Domain ersetzen).
Je nach Konfiguration des Tools werden die jeweiligen Netzwerk-Knotenpunkte inklusive ihrer zugehörigen Antwortzeiten angezeigt. Das verschafft zumindest einen Eindruck davon, wie viele Knoten zwischen uns (dem Client) und dem angesprocheneren Zielnetzwerk (Host) überhaupt liegen. Je geringer die Anzahl der Hops, desto besser für die Performance.
Festplatte (SSD/HDD)
Auch die Festplatten machen einen wichtigen Teil der WordPress Voraussetzungen aus. Dabei geht es aber weniger um exorbitanten Speicherplatz, als um die Geschwindigkeit der Lese- und Schreibvorgänge auf den persistenten Speichermedien. Wer bereits einmal den Unterschied von SSD-Festplatten und klassischen HDD-Festplatten beim Bootvorgang eines Rechners erleben konnte, weiß sehr genau, welche massiven Performance-Unterschiede Festplatten aufweisen können. Und die haben natürlich auch auf die Geschwindigkeit einer Website Auswirkungen.
Während HDDs (Hard Disk Drive) mechanische Komponenten aufweisen (rotierende Magnetplatte, Rotationsantrieb, mechanisch bewegbaren Kopf für Schreib- und Lesevorgänge usw.), kommen die SSDs (Solid State Drive) gänzlich ohne bewegliche mechanische Komponenten aus. Damit erreichen die SSDs gegenüber den HDDs im Praxisbetrieb einen rund 10 bis 30-fachen Performance-Vorteil. Das wirkt sich entsprechend gravierend auf die Zugriffszeiten der Daten aus.
Aufgrund dieser mechanischen Komponenten konsumieren Datenbankzugriffe über eine HDD Festplatte deutlich mehr Zeit. Datenbankverwaltungssysteme organisieren ihre Daten über sog. Datenbank-Seiten, die nach dem Commit der arbeitenden Transaktionen persistent auf der Festplatte gespeichert werden. Bei jedem Zugriff auf die persistent gemachten Daten müssen die betreffenden Seiten von der Platte in den Datenbank-Puffer eingelesen werden. Je langsamer die Festplatte hier arbeitet, desto länger dauert auch der Datenbankzugriff. Deshalb haben SSDs hier einen signifikanten Performance-Vorsprung im direkten Vergleich zu ihren mechanischen Geschwistern.
Einen entscheidenden Nachteil haben die SSDs allerdings trotzdem. Im Vergleich zu den HDDs sind die Kosten pro Gigabyte Speicherplatz deutlich höher. Das liegt nicht zuletzt an der noch nicht ganz abgeschlossenen Entwicklung der SSDs, die eine entsprechende Teuerung nach sich zieht, bis der Markt irgendwann mit günstigen SSDs gesättigt ist. Wer einen externen Webserver buchen will, der sämtliche Daten vollständig auf SSD-Festplatten speichert, sollte schonmal seine Lebensversicherungen auflösen oder den Skiurlaub für dieses Jahr stornieren. Denn ein SSD-Hosting lassen sich die Anbieter derzeit noch teuer bezahlen.
Einige Hoster setzen auf Mischkonzepte mit HDD und SSD. Dabei werden zugriffsintensive Softwarekomponenten wie die MySQL-Datenbank auf der (kapazitiv kleineren) SSD gespeichert, während datenintensive Komponenten (z.B. die WordPress-Verzeichnisse) auf der größeren und billigeren HDD gespeichert werden. Sicherlich ein guter Kompromiss aus höherer Hosting-Performance und Bezahlbarkeit.
Prozessor (CPU)
Der Prozessor oder CPU (Central Processing Unit) eines Servers ist nicht nur das Hardware-Herzstück und der primäre Performance-Faktor auf Hardware-Ebene, sondern auch eine der wichtigsten WordPress Voraussetzungen für den performanten Betrieb professioneller WP-Websites. Hauptprozessoren bestehen aus Steuerwerk, Leitwerk und dem Rechenwerk, wobei die Definition aufgrund der rasanten technischen Entwicklung von Mehrkern-Prozessoren und ganzen „Systems on a Chip“ zunehmend verschwimmt. Es existieren noch weitere Arten von Prozessoren, die spezialisierte Aufgaben übernehmen (z.B. Grafikprozessoren, GPU), die aus Hardware-Sicht aber in den meisten Fällen nicht als Hauptprozessor fungieren.
Im Grunde genommen verarbeitet eine CPU alle Rechenprozesse sequenziell, die beim Betrieb von Hard- und Software anfallen. Das bedeutet, dass die CPU auf einem (Web-)Server auch sämtliche Rechenleistung bewältigen muss, die beispielsweise aufgrund der Zugriffe auf eine WordPress-Webseite benötigt wird.
Weist eine CPU mehrere („echte“) Kerne auf, steigt damit die Multitasking-Fähigkeit des Prozessors. Das ist bei uns Männern zwar ein Wunschdenken, funktioniert auf Hardware-Ebene aber außerordentlich gut. Moderne Mehrkern-Prozessoren (z.B. Dual-Core oder Quad-Core) kommen inzwischen bei fast allen Webservern zum Einsatz und ermöglichen eine sehr effiziente Lastverteilung der anfallenden Rechenprozesse bis hin zum Multi-Threading. Damit lassen sich auch auf einem einzigen Server viele gleichzeitig anfallende Rechenprozesse effizient verwalten und abarbeiten.
Das ist auch der Grund dafür, warum viele Webhoster immer mehr Kunden pro Server zulassen können. Aufgrund der permanent steigenden CPU-Leistung kann ein Webserver auch immer mehr Prozesse verarbeiten, die parallel durch unterschiedliche Server-Nutzer verursacht werden. Das gilt natürlich nur, wenn die steigende Hardware-Leistung nicht zeitgleich durch höheren Performance-Bedarf der eingesetzten Software-Applikationen „aufgefressen“ wird.
In Sachen CPU gelten die folgenden Faustregeln:
- Je leistungsfähiger eine CPU, desto besser. Dabei gilt: Anzahl der Kerne pro CPU sollte mit der Anzahl paralleler Nutzer pro Server korrelieren. Viele Nutzer auf einem Server, die parallel Prozesse auslösen, erfordern idealweise eine hohe Anzahl an CPU-Kernen.
- Ob die Taktfrequenz der CPU ein wichtigeres Leistungsmerkmal als die Anzahl der CPU-Kerne darstellt, hängt vom Einzelfall der Anwendung ab und kann nicht pauschalisiert werden
- Gerade für Shared-Hosting Pakete, in denen viele Kunden pro Server laufen, sollte ein Paket gewählt werden, das eine möglichst hohe Anzahl an Prozessor-Kernen bietet
Allgemein gelten CPU eher selten als Performance-Flaschenhals und stellen damit ein untergeordnetes Kriterium für die spezifischen WordPress Voraussetzungen dar. Die Leistungsfähigkeit moderner Prozessoren wir in nur wenigen Fällen vollständig abgerufen. Limitierende Faktoren sind hier viel häufiger die Festplatten, der Arbeitsspeicher und die verwendete Software.
Arbeitsspeicher (RAM)
Der RAM (Random Access Memory) wird auch gerne als Arbeitsspeicher oder Hauptspeicher bezeichnet und dient als Zwischenspeicher für den schnellen Zugriff auf häufig benötigte Daten, die insbesondere von dem Prozessor (CPU) und dem Betriebssystem ständig adressiert werden müssen.
Jede Software, die in einem Betriebssystem eines Computers läuft, füllt den RAM mit Daten, die zur Laufzeit des Programms kontinuierlich benötigt werden und so deutlich schneller abgerufen werden können, als es beispielsweise über den Zugriff auf persistente Speichermedien wie Festplatten möglich wäre. Dabei greift eine CPU permanent auf die im RAM gelagerten Daten zu und optimiert die Datenzugriffe durch einen oder mehrere Pufferspeicher bzw. Cache-Module, die meistens sogar direkt im Prozessor integriert sind. Über die Konstellation aus CPU, RAM und Cache lassen sich somit datenverarbeitende Prozesse sehr performant ausführen, wenn die Rahmenbedingungen stimmen.
Das funktioniert nämlich nur, wenn der Hardware auch genügend Arbeitsspeicher mit adäquater Zugriffszeit zur Verfügung steh, auf welchen die Programme ihre Daten für die Verarbeitung zwischenspeichern können. Grundsätzlich können Dateien zwar auch auf Festplatten temporär ausgelagert werden, wenn ein Arbeitsspeicher ausgelastet ist, allerdings kostet dieses Vorgehen viel Performance und verlangsamt ein Computersystem wie Webserver ungemein. Ein großer Arbeitsspeicher gilt deshalb als wesentliche WordPress Voraussetzung und als Grundpfeiler von leistungsfähigen Webservern.
MySQL-Version
MySQL ist eines der am weitesten verbreiteten relationalen Datenbankverwaltungssysteme und kann damit als fundamentale WordPress Voraussetzung gesehen werden. Denn das Datenbankverwaltungssystem bildet die technische Datenbankfinfrastuktur ab, die das CMS WordPress für die Lauffähigkeit benötigt. Eine Alternative zu MySQL ist MariaDB, ein weiteres Open-Source Projekt des schwedischen Software-Entwicklers Michael Widenius, der seine Quellcode-Kunstwerke mit Vorlieb nach seinen Familienangehörigen benennt.
So standen seine Töchter My und Maria Namenspate für zwei Datenbankverwaltungssysteme, ohne die das Internet in der heutigen Zeit nicht funktionieren würde. Zwischen seiner Entwicklung im Jahr 1994 und dem Jetzt hat sich in der Entwicklung von MySQL allerdings viel getan.
Unzählige Updates der Datenbank-Software machen MySQL zu einem performanten System, das auch hochkomplexe Anwendungen managen kann und als zuverlässige Datenbankgrundlage für Applikationen wie WordPress dient. Das setzt aber voraus, dass die WordPress-Datenbank auch auf eine aktuelle MySQL-Version zurückgreifen kann. Aktueller Mindeststandard für MySQL ist Version 5.6.
Im April 2018 hat Oracle die MySQL-Version 8.0 vorgestellt. Das große Update wird für die Zukunft weitreichende Neuerungen und Verbesserungen in Puncto Sicherheit, Performance und Funktionalität der Software bieten und ist schon jetzt bei vielen Hoster verfügbar – wenn auch nur auf Anfrage.
MySQL 8.0 soll Datenbanken in Zukunft noch effektiver absichern, indem einige Optimierungen für die SQL-Rollen und die OpenSSL-Verschlüsselung vorgenommen wurden. Des Weiteren lassen sich sicherheitsrelevante Parameter wie Passwortstärke oder Superuser datenbankintern analysieren. Die in MySQL vormals genutzte native Authentifizierungsmethode via Passwort wird in Version 8.0 auf ein SHA2-Passwort umgestellt. Weitere Informationen zu MySQL 8.0 finden sich in den MySQL 8.0-Release Notes.
PHP-Version
PHP ist die Skriptsprache, in der auch der primäre Teil des WordPress-Quellcodes programmiert ist. Zusammen mit dem Webserver Apache bilden MySQL und PHP somit die grundlegenden technischen WordPress Voraussetzungen ab. Ähnlich wie bei MySQL wird auch die Skriptsprache PHP in unregelmäßigen Abständen überarbeitet. Neue Releases bringen in den meisten Fällen vor allem Sicherheitsupdates und Performance-Optmierungen mit sich. Es empfiehlt sich also, beim Betrieb eines Webserver stets die jeweils aktuellste und von WordPress unterstützte PHP-Version zu nutzen.
Das bekannte CDN Cloudways hat einen detaillierte Performance-Benchmark zwischen PHP 5.6 und PHP 7.0 aufgestellt, der die Geschwindigkeitsunterschiede der beiden PHP-Versionen deutlich demonstriert. In allen Fällen konnte PHP 7.0 (und höher) die Vorgängerversion outperformen, in Einzelfällen sogar um 70% und mehr. Klare Sache. Die optimierte Performance ist u.a. auf geringere Antwortzeiten und optimierte Speicherbelegung zurückzuführen, die eine Ausführung von PHP 7+ für den Webserver deutlich effizienter macht.
Apropos Webserver. Inzwischen sollten alle professionellen Webserver und Hosting-Anbieter mindestens PHP 7.0 unterstützen. Als Standard kann inzwischen auch PHP 7.2 angesehen werden, zumal das Release der Version schon einige Monate zurückliegt und die Alpha-Phase gut überstanden hat. Wer noch immer PHP 5.6 oder ältere Versionen nutzt, sollte nicht nur schleunigst seine fahrlässigen Sicherheitsansprüche überprüfen, sondern auch dringend ein Update einleiten.
PHP Memory Limit
„Fatal error: Allowed memory size of X bytes exhausted (tried to allocate X bytes) in …
Out of memory (allocated X) (tried to allocateX bytes) in …“
Wenn uns unsere WordPress-Webseite diese Fehlermeldung um die Ohren haut, ist eine der wichtigsten WordPress Voraussetzungen nicht korrekt initialisiert: das PHP Memory Limit. Diese kleine aber feine Einstellungen weckt leichte Assoziationen zu unserem RAM und fungiert in gewisser Weise auch als Arbeitsspeicher für die Skriptsprache PHP. Denn bei jedem Aufruf eines PHP-Skriptes benötigt dieses einen bestimmten Arbeitsspeicher.
Das PHP_memory_limit legt fest, wieviel Arbeitsspeicher pro Skriptaufruf maximal genutzt werden darf. Das heißt allerdings nicht, dass sich alle Skripte ungenutzten Arbeitsspeicher teilen und ihn dynamisch nach Bedarf freigeben. Und darin liegt auch der elementare Performance-Faktor des PHP Memory Limits. Denn dieses Limit soll im Wesentlichen verhindern, dass schlecht programmierte Skripte sämtliche Speicher-Ressourcen eines Webservers konsumieren und für die wirklich wichtigen Skripte nichts mehr an Speicher übrig bleibt. Das ist ein wenig vergleichbar mit der zeitlichen Beschränkung beim All-You-Can-Eat-Buffet.
Das Memory Limit liegt im PHP 7.2.1 Master Value bei 256mb. Das heißt, dass bei einem auf 1GB limitierten Arbeitsspeicher theoretisch nur maximal 5*256mb PHP-Skript parallel ablaufen können, bevor der Arbeitsspeicher ausgelastet ist. In der Praxis lasten PHP-Skripte das Memory Limit aber nur in wenigen Fällen vollständig aus. Nur Skript-intensive Anwendungen wie der Webshop WooCommerce benötigen regelmäßig ein Memory Limit von 128mb oder mehr.
Die weitläufige Annahme, dass ein möglichst hohes Memory Limit in PHP die WordPress-Performance nachhaltig verbessert, ist also falsch. Ob ein Anheben des Memory Limits sinnvoll ist, hängt in erster Linie mit dem verfügbaren Arbeitsspeicher des Webserver und dem Arbeitsspeicher-Bedarf der verwendeten Applikationen zusammen. Je höher der Ressourcen-Bedarf der Skripte ist, desto wichtiger ist eine sukzessive aber kontrollierte Anhebung des Speicherlimits. Gleichzeitig steigt damit aber die Gefahr, dass begrenzte Ressourcen zu schnell ausgelastet werden. Aufpassen angesagt!
PHP-Memory Limit anpassen
Ganz mutige Webmaster können das PHP Memory Limit natürlich auch anpassen, wenn sie mit der WordPress-Performance nicht ganz zufrieden sind. Ob das immer sinnvoll ist, ist eine andere Frage. Dazu kommen im Grunde genommen drei Varianten in Fragen:
(1) PHP Memory Limit über wp-config.php erhöhen
define(‘WP_MEMORY_LIMIT’, ’128M’);
(2) PHP Memory Limit via .htaccess ändern
php_value memory_limit 128M
(3) php.ini im WordPress-Root Verzeichnis anlegen
memory_limit=128M
Die 128Mb lassen sich hier natürlich individuell anpassen. Für die meisten WordPress PHP-Skripte reichen grundsätzlich 64Mb. In Einzelfällen können aufwändige Plugins auch 128Mb oder mehr benötigen. Im Zweifel ist das Logfile des Admins bester Freund!
Zugriffe auf Apache-Module
Der Webserver Apache und dessen Funktionalitäten lassen sich über eine umfangreiche Anzahl von zusätzlichen Modulen erweitern. Die wichtigsten Module sind in den meisten Fällen schon serverseitig durch den Hoster vorinstalliert. Einige Module gehören aber definitiv zu den unverzichtbaren WordPress Voraussetzungen, wenn man bestimmte Funktionen wie das Umschreiben von Permalinks nutzen möchte. Dazu ist das Apache/mod rewrite nötig, das Angeforderte URLs serverseitig umschreiben kann. Das Modul lässt sich auch explizit via .htaccess aktivieren, sofern der Hoster das Modul standardmäßig installiert hat.
WordPress auf eigenem Server / NAS
So ziemlich alle der hier gelisteten WordPress Anforderungen lassen sich mit etwas Know-How auch problemlos auf einem eigenen Webserver oder einem NAS-System umsetzen, das als Testumgebung für WordPress-Webseiten dienen kann oder sogar das Hosting einer kleinen Webseite durchaus performant bewältigen kann, wenn die eigene Internetverbindung nicht in unregelmäßigen Abständen einen Arbeitsstreik mit der eigenen Gewerkschaft organisiert.
WordPress Voraussetzungen bei Hoster anfragen
Als guter Indikator für die Tauglichkeit eines Hosters ist der folgende Fragenkatalog, den du gerne an einen Hoster deiner Wahl per Mail übersenden kannst. Mit den Antworten auf diese Basisfragen lässt sich schnell klären, ob der Hoster für eine WordPress-Webseite tauglich ist:
Sehr geehrtes Hosting-Team,
ich interessiere mich für einen eigenen Webspace / Webserver, auf dem eine umfangreiche WordPress-Installation mit mehreren Plugins laufen soll. Dazu würden mich folgende Sachverhalte interessieren:
- Ist standardmäßig PHP 7.2 oder höher verfügbar?
- Ist MySQL 5.6 oder höher verfügbar?
- Wo sind die Server lokalisiert (Standort/Region)?
- Welche Prozessorleistung weist der Webspace / Webserver auf?
- Wie hoch ist der Arbeitsspeicher von Webspace / Webserver?
- Wie hoch ist das PHP Memory Limit standardmäßig eingestellt?
- Welche Version von Apache ist installiert und ist das Modul mod rewrite verfügbar?
- Ist ein SSH Zugang zum Webspace möglich?
Vielen Dank für Ihre Mühe & beste Grüße!
Mit diesem kleinen Snippet sollten sich die passenden WordPress Voraussetzungen im Handumdrehen ermitteln lassen. Wenn du Hilfe oder Unterstützung bei der Ermittlung der passenden Hosting-Umgebung und den jeweiligen WordPress Voraussetzungen benötigst, nutze gerne unseren kostenlosen WordPress Support.