Ștergeți avertismentul Nextcloud OPcache prin ajustarea limitei din dreapta

Pentru a șterge avertismentul „OPcache-ul PHP nu este configurat corect” al Nextcloud, deschideți avertismentul complet în Setări de administrare → Prezentare generală, apoi creșteți doar limita OPcache pe care o identifică în configurația PHP utilizată de serverul web. Reporniți serviciul PHP corespunzător și verificați din nou avertismentul; editarea configurației PHP din linia de comandă poate să nu modifice ceea ce utilizează Nextcloud.

De exemplu, dacă Nextcloud raportează că bufferul pentru șiruri de caractere interne este aproape plin, creșterea memoriei opcache.interned_strings_bufferde la 16 la 32 MB este o primă ajustare rezonabilă atunci când serverul are suficientă RAM. O avertizare diferită despre scripturile memorate în cache sau memoria partajată necesită o setare diferită.

De ce Nextcloud afișează acest avertisment OPcache

OPcache stochează bytecode-ul PHP compilat în memoria partajată, reducând cantitatea de compilare necesară pentru cererile web repetate. De asemenea, rezervă spațiu pentru șiruri de caractere interne, ceea ce permite PHP să reutilizeze șiruri de caractere identice. Aceste capacități sunt limite separate, așadar extinderea uneia nu rezolvă neapărat o alertă despre alta.

Conform documentației de optimizare a serverului Nextcloud 35 , panoul de administrare avertizează atunci când limita de dimensiune a unui OPcache depășește 90% din capacitatea alocată. Mesajul poate menționa în mod specific un buffer de șiruri de caractere intern aproape plin, un număr limitat de scripturi memorate în cache sau memorie partajată insuficientă. Acest detaliu determină remedierea.

Nextcloud necesită și opcache.save_comments=1, deoarece depinde de comentariile păstrate în codul PHP. Prin urmare, o extensie OPcache dezactivată sau o păstrare dezactivată a comentariilor este o problemă de configurare, nu doar o problemă de dimensionare a memoriei cache.

1. Identificați setarea care necesită atenție

Conectați-vă ca administrator, navigați la Setări de administrare → Prezentare generală și citiți avertismentul OPcache complet. Înregistrați directiva exactă, dacă există una numită. Nu presupuneți că fiecare avertisment OPcache înseamnă că bufferul de șiruri intern este subdimensionat.

  • Bufferul pentru șiruri de caractere internate este aproape plin: verificați opcache.interned_strings_buffer.
  • Memoria partajată OPcache este aproape plină: verificați opcache.memory_consumption.
  • Scripturi sau chei memorate în cache care se apropie de limită: verificați opcache.max_accelerated_files.
  • OPcache dezactivat sau comentariile nu sunt păstrate: verificați opcache.enableși opcache.save_comments.

2. Găsiți configurația PHP care deservește Nextcloud

Pe serverele Debian sau Ubuntu care utilizează PHP-FPM, configurația PHP este de obicei organizată în funcție de versiunea PHP și API-ul serverului. De exemplu, PHP 8.3 FPM poate citi fișiere sub /etc/php/8.3/fpm/conf.d/, în timp ce modulul PHP al Apache poate utiliza /etc/php/8.3/apache2/conf.d/.

Pentru a vedea ce servicii PHP-FPM există pe o gazdă systemd, executați:

systemctl list-units --type=service 'php*-fpm.service'

Verificați fișierele OPcache aplicabile, înlocuind versiunea PHP instalată:

sudo ls -l /etc/php/8.3/fpm/conf.d/*opcache*
sudo grep -R 'opcache\.' /etc/php/8.3/fpm/conf.d/

Dacă nu se găsesc fișiere, verificați convențiile principale php.iniși de împachetare pentru distribuția dvs. Comanda php --inieste utilă pentru identificarea configurației CLI PHP, dar CLI și PHP-FPM pot încărca setări diferite.

Pentru Docker sau Nextcloud All-in-One, examinați configurația PHP din interiorul containerului Nextcloud și utilizați o metodă de configurare persistentă acceptată. Editarea /etc/phpfișierelor gazdă nu va configura, de obicei, PHP în interiorul unui container; editarea unui fișier container generat poate fi, de asemenea, anulată prin recreare.

3. Măriți limita raportată fără a modifica setările nerelevante

Faceți o copie de rezervă a fișierului de configurare relevant înainte de a face o modificare. Într-o instalare convențională Debian/Ubuntu PHP-FPM, o abordare ușor de întreținut este adăugarea unei suprascrieri locale în conf.ddirectorul FPM al versiunii PHP respective. Confirmați că acest director este într-adevăr încărcat de instalarea PHP-FPM înainte de a continua.

Pentru exemplul de buffer cu șiruri interne , creați sau editați o suprascriere locală, cum ar fi /etc/php/8.3/fpm/conf.d/99-nextcloud-opcache.ini:

; Example for a warning about interned strings
opcache.interned_strings_buffer=32

Aici, 32înseamnă 32 MB, nu 32 de octeți. Dimensionați valoarea finală în funcție de utilizarea reală și de memoria RAM disponibilă.

Dacă avertismentul numește în schimb o limită diferită, utilizați exemplul corespunzător în loc să le adăugați orbește pe toate trei:

; Example only: larger shared bytecode cache
opcache.memory_consumption=256

; Example only: allow more cached script keys
opcache.max_accelerated_files=20000

Valorile pentru opcache.memory_consumptionsunt în megaocteți, în timp ce opcache.max_accelerated_filesspecifică o limită de chei de script. Referința oficială de configurare PHP OPcache explică unitățile, valorile implicite și posibilitatea de modificare a acestora.

Când avertismentul indică OPcache dezactivat sau comentarii lipsă în loc de capacitate, verificați aceste setări:

opcache.enable=1
opcache.save_comments=1

Nu dezactivați opcache.validate_timestampsși nu prelungiți substanțial datele opcache.revalidate_freqdoar pentru a ignora acest avertisment. Nextcloud avertizează că revalidarea întârziată a memoriei cache poate împiedica intrarea în vigoare promptă a modificărilor de configurație și actualizare.

4. Aplicați noua configurație

Pentru un exemplu de server care rulează PHP 8.3 prin PHP-FPM, validați mai întâi configurația serviciului, apoi reporniți serviciul corespunzător într-o scurtă fereastră de mentenanță:

sudo php-fpm8.3 -t
sudo systemctl restart php8.3-fpm

Înlocuiți 8.3cu versiunea instalată de PHP-FPM și confirmați executabilul și numele serviciului înainte de a rula oricare dintre comenzi. O repornire întrerupe cererile gestionate de acel pool. Pe Apache cu mod_php, serviciul relevant este Apache mai degrabă decât PHP-FPM; pentru containere, aplicați procedura documentată de repornire sau recreare a implementării, păstrând în același timp configurația.

Dacă serviciul nu repornește, restaurați configurația copiată de rezervă și verificați jurnalul de erori PHP-FPM sau al serverului web.

5. Dacă avertismentul persistă, verificați setările web PHP eficiente

Prima reîncărcare Setări de administrare → Prezentare generală după ce workerele PHP au repornit. Dacă aceeași avertizare persistă, verificați dacă directiva modificată este de fapt încărcată de runtime-ul web PHP, nu doar de CLI. Verificați dacă există un fișier încărcat ulterior .inisau o suprascriere a pool-ului PHP-FPM care înlocuiește valoarea dvs.

Pe un server pe care îl controlezi, poți inspecta temporar valorile web PHP folosind un endpoint de diagnosticare cu acces restricționat și ini_get()funcții PHP. Nu lăsa niciodată o phpinfo()pagină publică online: aceasta poate dezvălui mediul, căile, modulele și alte detalii sensibile de configurare. Elimină orice endpoint de diagnosticare imediat după verificare.

Pentru o alertă de dimensionare persistentă, inspectați utilizarea reală a OPcache-ului în condiții de trafic normal, în loc să dublați în mod repetat valorile. Documentația PHPopcache_get_status() descrie statisticile privind memoria, șirul intern și scriptul memorat în cache disponibile unui proces PHP care rulează.

Imaginea oficială Docker a Nextcloud și implementările All-in-One au propriile setări implicite PHP; nu presupuneți că modificările la nivel de gazdă sau valorile recomandate de o altă instalare vor persista. Consultați depozitul oficial Docker al Nextcloud sau depozitul oficial All-in-One pentru modelul de configurare care corespunde implementării dvs.

Verificați dacă remedierea a funcționat

Reveniți la setările de administrare → Prezentare generală și confirmați că avertismentul specific OPcache a dispărut. Deschideți și reîncărcați câteva pagini Nextcloud pentru a vă asigura că aplicația răspunde în continuare normal. Dacă avertismentul reapare după o utilizare regulată, verificați din nou aceeași limită măsurată și configurația web PHP efectivă; scopul este de a lăsa suficient spațiu liber fără a aloca memorie inutilă către OPcache.

Lasă un comentariu

Controlează vârfurile de CPU din previzualizarea Nextcloud cu o coadă programată

Mută ​​miniaturile într-un program controlat în fundal, decupează dimensiunile de previzualizare neutilizate și verifică coada fără a suprasolicita serverul Nextcloud.

Obțineți sincronizarea desktop Nextcloud trecând de la „Procesarea fișierelor”

Găsiți fișierul, regula de excludere, problema de conexiune sau starea bazei de date client care blochează sincronizarea Nextcloud, apoi verificați încărcările și descărcările în siguranță.

Ștergeți avertismentul Nextcloud OPcache prin ajustarea limitei din dreapta

Găsiți limita PHP OPcache care declanșează avertismentul Nextcloud, actualizați configurația web PHP corectă, reporniți în siguranță și verificați rezultatul.

Conectarea Nextcloud la CODE Docker: Configurare și compromisuri

Conectarea Nextcloud la CODE Docker: Configurare și compromisuri

Compară CODUL încorporat și cel bazat pe Docker, apoi conectează Collabora Online la Nextcloud printr-un proxy invers HTTPS securizat.

Construiți un cluster Nextcloud rezilient cu Galera

Planificați o implementare fiabilă Nextcloud HA cu stocare partajată, blocare Redis, rutare MariaDB cu funcție de cvorum și verificări practice de failover.

Transmiteți apelurile Nextcloud Talk atunci când Direct Media eșuează

Transmiteți apelurile Nextcloud Talk atunci când Direct Media eșuează

Configurați și verificați un releu TURN accesibil pentru Nextcloud Talk atunci când firewall-urile sau NAT-ul restrictiv blochează apelurile directe media.

Ștergeți avertismentele de integritate Nextcloud prin restaurarea fișierelor corecte

Folosește raportul fișierelor nevalide pentru a identifica codul Nextcloud modificat, lipsă sau suplimentar, pentru a restaura în siguranță fișierele de încredere și pentru a verifica rezultatul.

Conectați Gmail sau Microsoft 365 la Nextcloud Mail folosind OAuth2

Configurați OAuth2 pentru Nextcloud Mail cu Gmail sau Microsoft 365, verificați primirea și trimiterea și rezolvați erorile de consimțământ comun și SMTP.

Ștergeți în siguranță modul de întreținere Nextcloud blocat cu OCC

Ștergeți în siguranță modul de întreținere Nextcloud blocat cu OCC

Folosește OCC pentru a restaura accesul la Nextcloud, a verifica starea migrării bazei de date și a alege comanda potrivită pentru instalările de arhivă, Docker sau Snap.

Configurați autentificarea Nextcloud LDAP și Active Directory

Conectați Nextcloud la LDAP sau Active Directory, limitați accesul cu filtre de utilizatori și grupuri și verificați autentificarea securizată înainte de implementare.