Acest articol explica eroarea de atingere a limitei de memorie PHP in cPanel si va ofera o solutie rapida si usoara de remediere a acesteia. Metoda necesita acces la cPanel.
Care este cauza erorii de memorie?
In unele situatii executarea unui script PHP poate returna o eroare de genul: “Fatal Error: Allowed memory size of XX bytes exhausted”. Aceasta eroare apare deoarece memoria alocata scriptului PHP a fost utilizata integral si scriptul nu poate finaliza executia sa.
Cantitatea de memorie disponibila pentru un proces PHP este definita de directiva memory_limit in fisierul php.ini global insa pe serverele HostX poate fi modificata in functie de necesitati.
Remedierea erorii de memorie
– Conectati-va la contul cPanel folosind numele dvs. de utilizator si parola sociata acestuia. Daca ati uitat parola, o puteti reseta utilizand optiunea „Reset Password” din aceeasi pagina.
– Odata intrat in panoul de control, accesati Software -> Select PHP Version
– Faceti click pe aceasta optiune si veti accesa interfata unde puteti modifica versiunea PHP si selecta / deselecta extensiile. In partea dreapta sus a paginii, veti vedea o alta optiune „Switch to PHP Options”.
– Click pe aceasta optiune si veti ajunge la interfata care afiseaza diferiti parametri PHP si valorile asociate acestora. Pentru a modifica limita de memorie PHP, dati click pe valoarea din partea dreapta a memory_limit. Va aparea un meniu drop-down cu valorile posibile dintre care puteti alege. Selectati valoarea dorita si apoi faceti click pe „Apply„.
Apoi derulati in jos si click pe „Save” pentru a aplica modificarile.
Puteti verifica daca modificarile au intrat in vigoare prin crearea unui fisier PHP cu urmatorul continut in acesta. Sa presupunem ca am creat un fisier numit info.php. Introduceti urmatorul continut:
Salvati fisierul si incarcati-l in folderul public_html al domeniului dvs. Vizualizati fisierul ca https://domeniu.ro/info.php (inlocuiti cu numele real al domeniului) si verificati setarile PHP pentru a confirma daca noua valoare modificata a fost aplicata corect.