Los de Nextcloud-waarschuwing "De PHP OPcache is niet correct geconfigureerd" op.

Als Nextcloud meldt "De PHP OPcache is niet correct geconfigureerd" , is de juiste oplossing niet om een ​​groot tuningblok uit een oud forumbericht te kopiëren. Identificeer eerst welke OPcache-limiet of -instelling Nextcloud tegenwerkt en wijzig vervolgens de PHP-configuratie die daadwerkelijk door uw webserver wordt gebruikt.

In de huidige documentatie voor Nextcloud 35 wordt OPcache beschouwd als een belangrijke prestatielaag voor PHP. Nextcloud geeft aan dat het beheerderspaneel een waarschuwing geeft wanneer de OPcache-groottebeperking meer dan 90% van de toegewezen capaciteit bedraagt. Ook is het vereist dat gecachede codecommentaren behouden blijven. De PHP-handleiding zelf beschrijft de relevante richtlijnen en hun standaardwaarden. Deze informatie biedt een veiligere manier om OPcache af te stemmen: verhoog alleen de beperkte resource, houd het vereiste gedrag ingeschakeld en vermijd wijzigingen die upgrades bemoeilijken, tenzij daar een goede reden voor is.

Overzicht van Nextcloud-beheer met een waarschuwing over de PHP OPcache-configuratie bovenaan de pagina.
De waarschuwing moet worden beschouwd als een diagnostische aanwijzing: achterhaal de specifieke OPcache-beperking voordat u de geheugen- of bestandslimieten wijzigt.

Wat de Nextcloud OPcache-waarschuwing doorgaans betekent

OPcache slaat gecompileerde PHP-bytecode op in gedeeld geheugen, zodat PHP niet bij elk verzoek dezelfde applicatiebestanden hoeft te parsen en compileren. Nextcloud beschrijft dit als een prestatieverbetering en PHP heeft Zend OPcache al sinds PHP 5.5 in de core opgenomen.

De waarschuwing kan om meerdere redenen verschijnen. De meest voorkomende oorzaken zijn dat de OPcache-capaciteit bijna vol is, OPcache is uitgeschakeld voor de web-SAPI, of dat een vereiste functionaliteit, zoals het bewaren van reacties, is gewijzigd. De huidige afstemmingshandleiding van Nextcloud vermeldt dat een waarschuwing over de grootte wordt weergegeven wanneer de OPcache-groottebeperking meer dan 90% van de toegewezen ruimte overschrijdt, en dat dit expliciet vereist is opcache.save_comments = 1.

Officiële referenties: Nextcloud server tuning en OPcache-richtlijnen , Nextcloud PHP-configuratie-instructies en PHP OPcache runtime-configuratie .

Kies de oplossing op basis van de waarschuwing, niet op basis van een standaardoplossing die voor iedereen werkt.

SituatieBeste eerste veranderingAfweging
Het OPcache-geheugen overschrijdt de waarschuwingsdrempel van Nextcloud.opcache.memory_consumptionMatig verhogenGebruikt meer gedeeld RAM-geheugen, maar vermindert de cache-activiteit.
De interne snaren zijn bijna vol.Toenameopcache.interned_strings_bufferVerbruikt extra gedeeld geheugen; het verhogen van niet-gerelateerde limieten levert geen voordeel op.
De cache voor scripts/bestanden is bijna vol.Toenameopcache.max_accelerated_filesEen grotere hashtabel gebruikt meer geheugen.
OPcache is uitgeschakeldStel opcache.enable=1de PHP-webconfiguratie inNormaal en aanbevolen voor Nextcloud; controleer of de juiste SAPI is geïnstalleerd.
opcache.save_commentswas gehandicaptSetopcache.save_comments=1Er is geen zinvolle, Nextcloud-specifieke reden om dit uit te schakelen; Nextcloud vereist dat reacties behouden blijven.

PHP geeft momenteel standaardwaarden van 128 MB voor opcache.memory_consumption, 8 MB voor opcache.interned_strings_bufferen 10.000 MB voor opcache.max_accelerated_files. Deze waarden zijn referentiepunten, geen universele Nextcloud-doelstellingen. Een kleine persoonlijke server kan prima werken met waarden die hier dicht bij liggen, terwijl een grotere installatie met veel applicaties meer ruimte nodig kan hebben.

Stap 1: Controleer welke PHP-configuratie Nextcloud daadwerkelijk gebruikt.

Dit is de stap die veel mislukte oplossingen voorkomt. Nextcloud documenteert dat de webserver en PHP via de commandoregel verschillende configuratiebestanden kunnen laden. Op Debian- en Ubuntu-achtige systemen zijn veelvoorkomende paden onder andere /etc/php/<version>/fpm/php.ini, /etc/php/<version>/apache2/php.ini, en /etc/php/<version>/cli/php.ini.

Voer het commando uit php --iniom de CLI-configuratie te bekijken, maar ga er niet van uit dat dit hetzelfde bestand is als dat van PHP-FPM of Apache. Gebruik voor de web-SAPI phpinfo()alleen een tijdelijke pagina als u deze kunt beveiligen en direct kunt verwijderen, of controleer de configuratie van uw PHP-FPM-pool/service en de modulebestanden die specifiek zijn voor uw distributie.

Aanbeveling: als Nextcloud achter Nginx of Apache met PHP-FPM draait, pas dan de FPM OPcache-configuratie aan. Als Apache mod_php gebruikt, pas dan de Apache PHP-configuratie aan. Zorg ervoor dat de CLI-configuratie consistent is wanneer achtergrondtaken hetzelfde gedrag vereisen, maar onthoud dat de browserwaarschuwing wordt gegenereerd door het webverzoekpad.

Stap 2: Bewerk de kleinste set OPcache-richtlijnen die het probleem oplost.

Teksteditor die een OPcache-configuratiebestand weergeeft met de instructies voor inschakelen, geheugen, geïnterneerde tekenreeksen, versnelde bestanden en het opslaan van opmerkingen.
Bewerk de OPcache-configuratie die door de web-SAPI wordt gebruikt. Verhoog alleen de bron die beperkt is, in plaats van blindelings een te grote vooraf ingestelde waarde te kopiëren.

Een conservatief voorbeeld voor een bescheiden server wordt hieronder weergegeven. Beschouw de numerieke waarden als uitgangspunten, niet als garanties:

[opcache]
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.save_comments=1

Als Nextcloud specifiek aangeeft dat het OPcache-geheugen bijna vol is, kan het verhogen van 128 MB naar 256 MB een redelijke stapsgewijze aanpassing zijn, mits de server voldoende vrij RAM-geheugen heeft. Als de waarschuwing echter verwijst naar geïnterneerde strings of gecachede scripts, verhoog dan die limiet in plaats van alleen het geheugen. Op een VPS met beperkt geheugen kan een directe verhoging naar 512 MB het beschikbare RAM-geheugen voor PHP-FPM-workers, de database, Redis en het besturingssysteem verminderen.

En hoe zit het met de hervalidatie-instellingen?

Volgens de huidige afstemmingshandleiding van Nextcloud controleert PHP standaard elke twee seconden op wijzigingen in gecachede scripts, en wordt er geen aanbeveling gedaan om deze standaardinstelling voor iedereen te wijzigen. Het verhogen van deze instelling opcache.revalidate_freqkan het aantal bestandsysteemcontroles verminderen, maar dit gaat ten koste van de werking: applicatie-upgrades en -aanpassingen config.phpkunnen langer duren voordat ze zichtbaar zijn. Het volledig uitschakelen van tijdstempelvalidatie is een agressievere aanpak en kan ertoe leiden dat oude code actief blijft totdat de OPcache handmatig wordt gewist of PHP opnieuw wordt opgestart.

Voor de meeste beheerders die alleen de waarschuwing willen verhelpen, is het raadzaam om de rest van de software in de normale modus te laten draaien opcache.validate_timestamps, opcache.revalidate_freqtenzij u de implementatieworkflow begrijpt. Nextcloud waarschuwt specifiek dat ongebruikelijk gedrag na upgrades kan worden veroorzaakt door verouderde code in de cache wanneer de hervalidatie is gewijzigd.

Stap 3: Start de juiste PHP-service opnieuw.

Na het wijzigen van een INI-bestand moet u het PHP-proces dat Nextcloud serveert opnieuw starten of herladen. Typische voorbeelden zijn systemctl restart php8.2-fpmPHP-FPM of een herstart/herlading van Apache wanneer mod_php in gebruik is. Vervang de versie en servicenaam door de versie en servicenaam die daadwerkelijk op uw systeem draaien.

Dit is des te belangrijker als u het hervalidatiegedrag hebt gewijzigd. Door de juiste service opnieuw te starten, wordt gegarandeerd dat de nieuwe OPcache-configuratie wordt geladen en wordt onduidelijkheid over verouderde bytecode weggenomen.

Stap 4: Controleer de waarden, maar controleer ook de web-SAPI.

Terminal met de uitvoer van `php --ini` en `php -i OPcache`, inclusief de status en belangrijke configuratiewaarden.
CLI-controles zijn handig voor het vinden van INI-bestanden en het bevestigen van de syntaxis, maar de web-SAPI kan een andere configuratie laden.

Nuttige commandoregelcontroles zijn onder andere:

php --ini
php -i | grep -i opcache

Deze commando's kunnen bevestigen dat PHP de instructies herkent, maar ze bewijzen alleen de CLI-configuratie. Als de Nextcloud-waarschuwing blijft verschijnen, vergelijk dan de geladen SAPI-configuratie van de webserver met het CLI-resultaat. Dit is vooral belangrijk op systemen die aparte cli, fpmen apache2INI-structuren gebruiken.

Stap 5: Controleer opnieuw Beheer > Overzicht

Overzicht van Nextcloud-beheer zonder de OPcache-waarschuwing en met normale systeemstatusindicatoren.
Na het herladen van PHP, vernieuw je het scherm Beheer > Overzicht. De OPcache-waarschuwing zou moeten verdwijnen zodra de web-SAPI de juiste limieten en instellingen gebruikt.

Vernieuw het Nextcloud-beheeroverzicht na het herstarten van de PHP-service. Als de waarschuwing verdwijnt, wordt de configuratie door de juiste SAPI gelezen en wordt de gemelde drempelwaarde niet langer overschreden.

Als het probleem aanhoudt, blijf dan niet willekeurig waarden verhogen. Controleer vier zaken in de volgende volgorde: of u het juiste INI-bestand hebt bewerkt, of een later geladen INI-bestand uw instelling overschrijft, of de betreffende PHP-service opnieuw is opgestart en of de waarschuwing een andere OPcache-bron noemt dan degene die u hebt verhoogd.

Hoeveel OPcache-geheugen moet je toewijzen?

Er bestaat geen optimale waarde. Het nuttige doel is voldoende marge, zodat de cache niet voortdurend tegen zijn limieten aanloopt, zonder de rest van de stack te belemmeren. Begin bij een kleine VPS conservatief en houd de geheugenbelasting in de gaten. Voor een instantie met veel applicaties of een grotere PHP-codebasis kan 256 MB of meer gerechtvaardigd zijn als het werkelijke OPcache-gebruik aantoont dat 128 MB onvoldoende is. Op een grote server moet de geheugengrootte worden afgestemd op het aantal PHP-FPM-workers en andere gedeelde services.

De praktische vergelijking is eenvoudig: meer OPcache-geheugen kan het verwijderen van cache-items en hercompilatie verminderen, maar minder OPcache-geheugen laat meer RAM over voor gelijktijdige PHP-processen en databases. Kies op basis van het gemeten gebruik en de waarschuwing die Nextcloud rapporteert, niet op basis van het maximale aantal dat uw server aankan.

Veelvoorkomende fouten waardoor de waarschuwing blijft verschijnen

  • Bij het bewerken van CLI-PHP gebruikt de browser nog steeds PHP-FPM of mod_php.
  • De verkeerde limiet verhogen: meer geheugen lost een volle tabel met versnelde bestanden niet op.
  • Vergeet de herstart: het draaiende PHP-proces heeft mogelijk nog steeds de oude INI-waarden.
  • Uitschakelen opcache.save_comments: Nextcloud vereist dat reacties behouden blijven.
  • Het kopiëren van verouderde tuning-codefragmenten: oude handleidingen bevelen mogelijk agressieve hervalidatie-instellingen aan die upgrade-problemen veroorzaken.

Aanbevolen aanpak per servertype

Kleine, persoonlijke Nextcloud-server: behoud de standaardinstellingen voor hervalidatie, bewaar reacties en verhoog de limiet alleen als deze daadwerkelijk de drempel overschrijdt. Dit minimaliseert het RAM-gebruik en voorkomt onverwachte operationele problemen.

Drukke server met meerdere gebruikers: monitor het OPcache-verbruik en zorg voor meer bufferruimte waar de beheerderswaarschuwing druk aangeeft. Stem het OPcache-geheugen af ​​op de dimensionering van de PHP-FPM-workers, zodat één optimalisatie niet leidt tot systeemwijde swapping.

Managed hosting of containerimage: bepaal eerst waar PHP-instellingen overschreven moeten worden. Het bewerken van een bestand in een tijdelijke container kan na een herimplementatie verdwijnen, terwijl een provider aangepaste INI-waarden via het controlepaneel of de omgevingsconfiguratie beschikbaar kan stellen.

Eindcontrole

Een correcte oplossing bestaat uit drie onderdelen: het web-PHP-proces van Nextcloud moet OPcache ingeschakeld hebben, het vereiste gedrag moet opcache.save_comments=1intact blijven en de specifieke OPcache-bron die bijna vol was, moet nu voldoende ruimte hebben. Zodra aan deze voorwaarden is voldaan en PHP opnieuw is geladen, zou de waarschuwing moeten verdwijnen zonder dat er overmatige geheugenallocaties of risicovolle wijzigingen in de cachevalidatie nodig zijn.

Laat een reactie achter

Het probleem met het hoge CPU-gebruik in Jitsi Meet op clientbrowsers oplossen.

Het probleem met het hoge CPU-gebruik in Jitsi Meet op clientbrowsers oplossen.

Diagnoseer pieken in het CPU-gebruik van de Jitsi Meet-browser en verlaag de belasting van de client door videotegels, camera-effecten, browsergraphics en hostinstellingen te controleren.

Hoe je Jitsi Videobridge-statistieken kunt monitoren met Prometheus en Grafana

Hoe je Jitsi Videobridge-statistieken kunt monitoren met Prometheus en Grafana

Monitor de status van Jitsi Videobridge, de belasting van conferenties en het verkeer met het ingebouwde Prometheus-eindpunt, en analyseer en visualiseer de gegevens vervolgens in Grafana.

Hoe configureer je een aangepaste domeinnaam voor Jitsi Meet Docker?

Hoe configureer je een aangepaste domeinnaam voor Jitsi Meet Docker?

Configureer een aangepast domein voor Jitsi Meet Docker met DNS, PUBLIC_URL, HTTPS, Let's Encrypt, firewallpoorten, NAT-instellingen en end-to-end verificatie.

Oplossing voor de 404-fout 'Zimbra Admin Console niet gevonden' na SSL-vernieuwing.

Oplossing voor de 404-fout 'Zimbra Admin Console niet gevonden' na SSL-vernieuwing.

Los 404-fouten in de Zimbra Admin Console op na het vernieuwen van een SSL-certificaat door de juiste URL en poort, proxy-routering, servicestatus, geïmplementeerde certificaten en logbestanden te controleren.

Los de Nextcloud-waarschuwing "De PHP OPcache is niet correct geconfigureerd" op.

Los de Nextcloud-waarschuwing "De PHP OPcache is niet correct geconfigureerd" op.

Leer hoe u de PHP OPcache-configuratiewaarschuwing van Nextcloud kunt diagnosticeren en oplossen door de actieve PHP SAPI, groottelimieten, opmerkingen en hervalidatie-instellingen te controleren.

Corrigeer migratiefouten in de Kopano-database na een MySQL-versie-upgrade.

Corrigeer migratiefouten in de Kopano-database na een MySQL-versie-upgrade.

Los problemen met Kopano-databasemigraties na een MySQL- of MariaDB-upgrade op door back-ups, serverversies, SQL-modi, tekenset, schemastatus en logbestanden te controleren.

Hoe configureer je LDAP- en Active Directory-authenticatie in Nextcloud?

Hoe configureer je LDAP- en Active Directory-authenticatie in Nextcloud?

Verbind Nextcloud met LDAP of Active Directory via beveiligd transport, gebruikers- en groepsfilters, inlogkenmerken en een geteste uitrolprocedure.

Element Android-meldingen repareren zonder Google-services: UnifiedPush-handleiding

Element Android-meldingen repareren zonder Google-services: UnifiedPush-handleiding

Los problemen met Element Android-meldingen op telefoons zonder Google op door UnifiedPush, Android-machtigingen, batterij-instellingen en betrouwbare verificatietests te configureren.

Los de Nextcloud-waarschuwing "Database mist enkele indexen" op.

Los de Nextcloud-waarschuwing "Database mist enkele indexen" op.

Verwijder de waarschuwing van Nextcloud over ontbrekende database-indexen met het officiële occ-commando. Maak eerst een back-up, bekijk de wijzigingen, voer de reparatie uit en controleer het resultaat.

Hoe configureer je Single Sign-On (SSO) met Keycloak in Element Web?

Hoe configureer je Single Sign-On (SSO) met Keycloak in Element Web?

Configureer Keycloak SSO voor Element Web door OIDC met Synapse te verbinden, de exacte callback-URL in te stellen, gebruikersclaims te koppelen en het uitloggen te testen.