Riješite kobnu grešku WordPress Fatalna greška: Dozvoljena veličina memorije od 268435456 bajtova je iscrpljena (pokušao dodijeliti 10220888 bajtova)

Fatalna greška u WordPressu : Nedovoljno memorije? Naučite kako riješiti problem memory_limit u WordPressu za 5 minuta

1. Pregled problema

U upotrebi WordPress , ako naiđete na grešku poput ove:
Fatal error: Allowed memory size of 268435456 bytes exhausted (tried to allocate 10220888 bytes)

To znači da PHP-u ponestaje memorije, što uzrokuje kvar sistema. Vaša backend stranica se ne otvara, a funkcionalnost kontrolne ploče je također zaglavljena.

Ova greška je posebno česta na web stranicama s velikim prometom ili onima koje koriste previše WordPress dodataka (plug-inova) .

Čak i ako povećate memoriju na 512M ili čak 3024M , problem i dalje postoji. Šta uzrokuje problem?

Zatim ćemo analizirati moguće uzroke korak po korak i naučiti vas kako riješiti ovaj problem jednom zauvijek.

Riješite kobnu grešku WordPress Fatalna greška: Dozvoljena veličina memorije od 268435456 bajtova je iscrpljena (pokušao dodijeliti 10220888 bajtova)

2. Zašto je još uvijek neefikasno povećavati limit_memory?

već jesi memory_limit od zadanog 256M unapređen u 512M3024M, ali problem ostaje. to znači:

  1. PHP postavke ne stupaju na snagu: Neka okruženja servera mogu zanemariti vaše ručno promijenjene php.ini.
  2. Dodatak ili tema zauzimaju previše resursa: Neki dodaci ili prilagođeni kodovi troše preveliku količinu memorije.
  3. Ograničenja konfiguracije servera: Server je možda postavio tvrdo ograničenje na dodjelu memorije PHP skripti, što uzrokuje da postavka bude nevažeća čak i ako je prekoračena.

Da biste riješili ovu situaciju, potrebno je sveobuhvatno provjeriti konfiguraciju servera i WordPress-a.

3. Korak po korak rješenja

1. Izmijenite datoteku php.ini

Prvo pronađite svoju php.ini fajl, koji se obično nalazi u /etc/php//usr/local/php/ ispod staze.

pretraživanje memory_limit, provjerite je li postavljeno na:

memory_limit = 512M

Zatim ponovo pokrenite web server :

  • apaš:sudo service apache2 restart
  • Nginx:sudo service nginx restart

Napomena : Neke usluge dijeljenog hostinga možda neće moći pristupiti php.ini datoteci. U tom slučaju možete preći na sljedeću metodu.

2. Nadjačajte ograničenje PHP memorije u wp-config.php

Čak i ako je konfiguracija memorije servera tačna, WordPress će ponekad ostati bez memorije zbog vlastitih postavki.

Stoga, možete ručno postaviti ograničenje memorije u datoteci wp-config.php :

define( 'WP_MEMORY_LIMIT', '512M' );
define( 'WP_MAX_MEMORY_LIMIT', '512M' );

Stavite ovaj kod wp-config.php Dokumentarac 顶部, kako bi se osiguralo da stupi na snagu kada se učita.

  • WP_MEMORY_LIMIT: Gornja granica front-end memorije, koja kontrolira korištenje resursa kada korisnici pristupe stranici.
  • WP_MAX_MEMORY_LIMIT: Gornja granica pozadinske memorije kako bi se osiguralo da operacije upravljanja neće uspjeti zbog nedovoljne memorije.

3. Provjerite potrošnju memorije dodataka i tema

Neki dodaci (pluginovi) koji intenzivno koriste resurse mogu uzrokovati iscrpljivanje memorije, kao što su dodaci za keširanje, SEO dodaci ili dodaci za e-trgovinu (kao što je WooCommerce).

Rješenje :

  • Zatvorite sve dodatke i omogućite jedno po jedno rješavanje problema.
  • Prebacite se na zadanu temu (kao što je Twenty Twenty-Three) i pogledajte da li je problem riješen.
  • 使用 Upitni monitor Dodatak za pregled komponenti sa velikom potrošnjom memorije.

4. Koristite .htaccess ili korisnički definisane PHP postavke

Ako koristite dijeljeni hosting , možete poboljšati korištenje PHP memorije izmjenom .htaccess datoteke:

php_value memory_limit 512M

Nakon spremanja, osvježite stranicu kontrolne ploče da provjerite je li problem riješen.

5. Obratite se dobavljaču servera

U nekim slučajevima, server nameće ograničenja PHP-ovoj upotrebi memorije.

Čak i ako promijenite ograničenje memorije, server neće dozvoliti da to stupi na snagu.

U ovom trenutku, trebate kontaktirati svog hosting provajdera i zatražiti od njih da vam povećaju kvotu memorije.

4. Konačni plan: onemogućite nepotrebne funkcije i optimizirajte kod

Čak i ako uspješno povećate ograničenje memorije, ne možete zanemariti optimizaciju performansi web stranice . Prekomjerno oslanjanje na dodatke ili korištenje tema koje intenzivno koriste resurse može dovesti do čestog nedostatka memorije. Stoga:

  1. izbriši nepotrebni dodaci i redundantni kod.
  2. Koristite efikasne dodatke za keširanje kao što su WP RocketW3 Ukupno Cache)。
  3. Redovno optimizirajte bazu podataka i čistite neželjene podatke.

5. Sažetak: Efikasni koraci za rješavanje memory_limit

  1. Provjerite jesu li promjene na php.ini stupile na snagu:set up memory_limit je 512M ili više.
  2. Definirajte ograničenja memorije u wp-config.php: Uvjerite se da WordPress koristi dovoljno memorije.
  3. Rješavanje problema s dodatkom i temom: Onemogućite dodatke sa velikom potrošnjom resursa.
  4. Obratite se dobavljaču servera ako je potrebno: Uverite se da server ne nameće ograničenje memorije na vašem PHP-u.
  5. Optimizirajte performanse stranice: Smanjite nepotrebne dodatke, optimizirajte bazu podataka i poboljšajte ukupnu operativnu efikasnost.

Optimizacija je dugoročno rješenje, memorija je samo temelj

Slijedeći korake u ovom članku, ne samo da ćete moći riješiti ovu dosadnu fatalnu grešku , već ćete i naučiti kako riješiti probleme s memorijom.

Međutim, samo stalno poboljšanje memorije nije osnovno rješenje za probleme web stranice.

Pravilna optimizacija koda i uklanjanje nepotrebnih dodataka ključni su za osiguranje dugoročnog stabilnog rada web stranice.

Nadam se da ste naučili nešto iz ovog članka i odmah počeli da praktikujete ove tehnike!

Šta ima više zadovoljstva od rješavanja teškog problema? 💪

Komentari

您的邮箱地址不会被公开。必填项已用*标注

Dođite na vrh