OPcache ist eine PHP-Erweiterung, die den bereits kompilierten PHP-Bytecode zwischenspeichert, damit PHP-Skripte nicht bei jedem Aufruf erneut vollständig übersetzt werden müssen. Das beschleunigt WordPress-Websites spürbar. Bei HostPress ist OPcache standardmäßig aktiv – in diesem Artikel erfährst du, welche Werte gelten und warum du den Live-Status nicht selbst per Skript abfragen kannst.
Voraussetzungen
- Ein Hosting-Vertrag bei HostPress
- Kenntnis der verwendeten PHP-Version deiner Domain (einsehbar im Kundencenter bzw. in Plesk)
Schritt-für-Schritt-Anleitung
1. Ist OPcache bei mir aktiv?
Ja – OPcache ist bei HostPress serverseitig für alle PHP-Versionen aktiviert und läuft im Hintergrund automatisch, ohne dass du dafür etwas einstellen musst.
2. Welche Standardwerte gelten?
Die konkreten Werte richten sich nach der jeweiligen PHP-Version und dem Server. Typische Beispielwerte sind opcache.memory_consumption von 256 MB und opcache.max_accelerated_files von 10.000. Läuft eine Domain unter derselben PHP-Version auf demselben Server wie eine andere Domain, gelten in der Regel dieselben Werte.
3. Warum ist die Live-Statusabfrage (opcache_get_status) deaktiviert?
Aus Sicherheitsgründen ist die PHP-Funktion opcache_get_status über disable_functions serverseitig deaktiviert. Der Grund: Auf einem Shared-Server laufen mehrere Kunden-Accounts parallel auf derselben PHP-Instanz. Ohne diese Einschränkung könnten Skripte theoretisch Cache-Statusinformationen anderer Accounts auf demselben Server auslesen. Die Deaktivierung schützt also die Trennung zwischen den Kunden-Accounts – OPcache selbst läuft davon unabhängig weiterhin voll aktiv im Hintergrund.
4. Wie bekomme ich die genauen Werte für meine Domain?
Da die Live-Abfrage per Skript nicht möglich ist, kannst du dich mit der betroffenen Domain und der verwendeten PHP-Version an unseren Support wenden. Wir schauen die aktuell gültigen OPcache-Werte für dich in der Serverkonfiguration nach.
5. Reicht der Standardwert bei großen Installationen noch aus?
Die im Artikel genannten Standardwerte (z. B. opcache.max_accelerated_files von 10.000) sind für die meisten WordPress-Websites mehr als ausreichend. Bei sehr umfangreichen Installationen – etwa mit einem Page-Builder-Theme, vielen aktiven Plugins und einem großen Online-Shop – kann die tatsächliche Anzahl an PHP-Dateien diesen Wert jedoch deutlich überschreiten.
Woran erkennst du ein zu kleines OPcache-Limit?
- Die Website bleibt spürbar langsam, obwohl bereits ein Caching-Plugin (z. B. WP Rocket) aktiv ist.
- Die Performance verschlechtert sich schleichend, je mehr Plugins, Theme-Bausteine oder Produkte hinzukommen.
- Eine Performance-Analyse zeigt eine sehr hohe Gesamtzahl an PHP-Dateien im Projektverzeichnis.
Geteilter OPcache auf Shared-Servern: Was die Werte in phpinfo bedeuten
Auf Shared-Servern teilen sich alle Websites mit derselben PHP-Version einen gemeinsamen OPcache. Wie viel Speicher und wie viele Dateien dort zur Verfügung stehen, gilt also nicht nur für deine Website, sondern für den gesamten Server-Verbund. Gerade bei großen Shops mit vielen Plugins kann dieser gemeinsame Cache vollständig belegt sein. Dann werden einzelne PHP-Dateien bei jedem Aufruf neu kompiliert, und Seiten wie Warenkorb oder Kasse werden langsamer.
So liest du die OPcache-Werte in phpinfo richtig
Den Live-Status per opcache_get_status() kannst du nicht abfragen (siehe Punkt 3). Über eine phpinfo()-Ausgabe siehst du im Abschnitt „Zend OPcache“ aber eine Momentaufnahme. Darauf solltest du achten:
- Used memory / Free memory: Ist der freie Speicher nahezu null, ist der Cache voll.
- Interned Strings Used memory: Ist auch dieser Puffer voll, können weitere Dateien schlechter zwischengespeichert werden.
- Cached scripts im Vergleich zu
opcache.max_accelerated_files: Liegt die Anzahl gecachter Skripte nahe am Limit, passen nicht alle Dateien in den Cache. - Hits und Misses (Trefferquote): Auf einer gut gecachten Website liegt die Trefferquote in der Regel weit über 90 %. Ein deutlich niedrigerer Wert spricht dafür, dass Dateien immer wieder aus dem Cache verdrängt werden.
Wichtig zu wissen
- Die Werte gelten für alle Websites auf dem Server. Ein voller Cache heißt also nicht automatisch, dass deine Website ihn allein füllt.
- Ein PHP-Neustart im Kundenbereich leert den geteilten Cache nicht. Wenn sich die Werte nach einem Neustart kurz verbessern, ist das keine dauerhafte Lösung, denn der gemeinsame Cache füllt sich wieder.
- Die OPcache-Werte kannst du nicht selbst ändern. Auch eine eigene
php.inioder.user.iniim Hosting-Account überschreibt die serverweite Konfiguration nicht. - Einen eigenen, nur für dich reservierten OPcache gibt es mit einem eigenen Server. Dort lassen sich die Werte passend zu deiner Installation einstellen.
Diese Angaben helfen dem Support bei der Prüfung
- Die betroffene Domain und die verwendete PHP-Version.
- Die OPcache-Werte aus
phpinfo()(Used/Free memory, Interned Strings, Cached scripts, Hits/Misses), am besten mit Uhrzeit und der Angabe, wie lange PHP zu diesem Zeitpunkt schon lief. - Die ungefähre Anzahl an PHP-Dateien deiner Installation sowie Theme/Page-Builder, Shop-Lösung und Anzahl der aktiven Plugins.
- Welche Seiten besonders langsam sind (z. B. Warenkorb, Kasse, Backend) und ob die Ladezeiten bei identischen Aufrufen stark schwanken.
Entfernt nicht mehr benötigte Plugins und eine Objekt-Caching-Lösung wie Redis (siehe Artikel „Die Nutzung von Redis-Cache“) entlasten deine Website zusätzlich. Eine zu kleine OPcache-Konfiguration ersetzen sie aber nicht.
Was kannst du tun?
- Wende dich mit der betroffenen Domain an den HostPress-Support und bitte um eine Prüfung der aktuellen OPcache-Auslastung.
- Teile mit, welches Theme bzw. welchen Page-Builder und welche Shop-Lösung du einsetzt – das hilft bei der Einschätzung der ungefähren Dateianzahl.
- Der Support kann bei Bedarf serverseitig Werte wie
opcache.max_accelerated_filesundopcache.memory_consumptionfür deine PHP-Version anpassen.
Gut zu wissen: Eine Anpassung dieser Werte ist eine serverseitige Einstellung und kann nicht selbst über die php.ini im eigenen Hosting-Account vorgenommen werden. Wende dich dafür immer an den Support.
6. Warum zeigt der WordPress-Website-Zustand „Opcode-Cache: Deaktiviert“ an, obwohl OPcache aktiv ist?
Diese Meldung verunsichert viele Kunden, vor allem nach einem Wechsel der PHP-Version. Die Ursache hängt direkt mit Punkt 3 dieses Artikels zusammen: WordPress prüft den OPcache-Status im Bereich „Website-Zustand“ typischerweise über die PHP-Funktion opcache_get_status(). Da diese Funktion bei HostPress aus Sicherheitsgründen serverseitig über disable_functions deaktiviert ist, kann WordPress keinen positiven Status auslesen und zeigt dir stattdessen fälschlicherweise „Deaktiviert“ an.
Das bedeutet: Die Anzeige im Website-Zustand ist in diesem Fall ein Fehlalarm. OPcache läuft unabhängig davon serverseitig weiter im Hintergrund und beschleunigt deine PHP-Skripte ganz normal – unabhängig davon, welche PHP-Version du nutzt.
Was kannst du tun?
- Du musst nichts unternehmen – eine Aktivierung ist nicht notwendig, da OPcache bereits aktiv ist.
- Wenn du dir die tatsächlichen Konfigurationswerte für deine Domain bestätigen lassen möchtest, wende dich mit Domain und verwendeter PHP-Version an unseren Support (siehe Punkt 4).
- Du kannst diese Site-Health-Meldung zu OPcache in der Regel ignorieren, sofern keine anderen Performance-Probleme auf deiner Website auftreten.
7. Ich habe eigene OPcache-Werte eingetragen – warum greifen sie nicht?
Vielleicht hast du in Plesk unter den PHP-Einstellungen deiner Domain eigene OPcache-Werte eingetragen, zum Beispiel opcache.memory_consumption, opcache.interned_strings_buffer oder opcache.max_accelerated_files. In phpinfo() tauchen diese Werte dann zwar auf, der laufende Cache arbeitet aber trotzdem mit anderen Werten.
Der Grund: Bei HostPress läuft PHP über PHP-FPM. PHP-FPM liest diese drei Speicher-Einstellungen nur einmal beim Start des PHP-Dienstes aus der zentralen Server-Konfiguration. Werte pro Domain werden dafür ignoriert. Deine Einträge schaden also nicht, haben aber auch keine Wirkung.
Gut zu wissen: Der OPcache wird pro PHP-Version geteilt
- Alle Websites auf einem Server, die dieselbe PHP-Version nutzen, teilen sich einen gemeinsamen OPcache-Speicher. Deine Dateien und Daten bleiben dabei getrennt, nur der Zwischenspeicher ist gemeinsam.
- Deshalb siehst du bei „Used memory“ manchmal deutlich mehr belegten Speicher, als deine eigene Website allein erklären würde.
- Aus demselben Grund bleibt
opcache_get_status()gesperrt, denn die Funktion würde den Inhalt des gesamten Caches anzeigen, einschließlich der Dateipfade anderer Kunden (siehe Punkt 3).
Woran erkennst du einen vollen OPcache?
- In
phpinfo()ist „Free memory“ nahe 0, oder „Interned Strings Buffer“ zeigt „Free: 0“. - „Cache misses“ ist deutlich höher als „Cache hits“.
- Die Website wird über den Tag hinweg spürbar langsamer und braucht mehr Arbeitsspeicher pro Aufruf.
Was kannst du tun?
- Rufe auf deiner Website
phpinfo()auf und mache einen Screenshot vom Bereich „Zend OPcache“ (vor allem Used/Free memory, Interned Strings, Cached scripts, Max keys, Hits/Misses). - Wende dich mit diesem Screenshot, deiner Domain und deiner PHP-Version an unseren Support. Wir prüfen die Auslastung und passen die Werte bei Bedarf serverweit für deine PHP-Version an.
- Kurzfristig kannst du den Cache selbst leeren: Wechsle in Plesk unter PHP-Einstellungen kurz auf eine andere PHP-Version und anschließend wieder zurück auf deine ursprüngliche Version. Teste deine Website danach einmal.
- Bitte stelle
opcache.validate_timestampsnicht auf0. Sonst führt PHP nach Plugin- oder WordPress-Updates weiterhin alten Code aus.
Hinweis: Häufig entstehen OPcache-Anfragen, nachdem ein KI-Tool die Meldung im WordPress-Website-Zustand ausgewertet hat. Solange deine Website nicht langsam ist und phpinfo() freien Speicher zeigt, musst du nichts tun (siehe Punkt 6).
Fazit & Support-Hinweis
OPcache ist bei HostPress immer aktiv und muss nicht manuell eingerichtet werden. Die Live-Statusabfrage per Skript ist aus Sicherheitsgründen bewusst deaktiviert, um die Trennung zwischen Kunden-Accounts auf gemeinsam genutzten Servern zu schützen. Für konkrete Konfigurationswerte wende dich einfach mit Domain und PHP-Version an unseren Support.