Naše webové stránky obsahujú odkazy na partnerské weby. Ak sa prekliknete z našich stránok na stránky partnera a tam si zakúpite jeho služby, obdržíme za sprostredkovanie províziu (Zistiť viac informácií). Táto forma spolupráce nijako neovplyvňuje objektívnosť našich recenzií. Každým nákupom cez kliknutie z našich stránok podporíte našu redakciu, aby sme aj do budúcnosti mohli tvoriť kvalitný a užitočný obsah. Ďakujeme.
Dôležité upozornenie Všetky naše články píšu skutoční ľudia. Nie sú to umelé texty od stroja.
Čo je memory_limit a na čo slúži?
Memory_limit je jedným z parametrov, ktorým by sme mali venovať pozornosť pri výbere webového hostiteľa. V tomto článku sa pozrieme na to, aká veľkosť je optimálna a čo vlastne znamená memory_limit.
Odkaz: PHP memory_limit na php.net
Čo je memory_limit?
PHP memory_Limit je množstvo pamäte, ktoré môže daný proces na serveri využívať. Vždy, keď klient odošle požiadavku na váš webový server a PHP ju spracuje, spustí sa proces PHP. Ak prekročíte nastavený limit pamäte, proces zlyhá a Apache to oznámi ako chybu HTTP 500.
Kedy uvažovať o zmene memory_limit PHP?
Môžeme zvážiť zvýšenie limitu, pretože stránka alebo php skript spôsobuje chybu memory_limit z dôvodu nedostatku pamäte.
Chyba sa môže prejaviť zobrazením tejto správy:
Fatálna chyba: Povolená veľkosť pamäte x bajtov vyčerpaná (pokúsil sa prideliť x bajtov) v /path/to/php/script
alebo
Fatálna chyba PHP: Došla pamäť (alokovaných x) (pokúsil sa alokovať x bajtov) v /path/to/php/script
WordPress môže zobraziť bielu obrazovku. Všetko potrebné nájdete v denníku error_log
Zmena globálneho limitu pamäte PHP memory_limit
Táto akcia si vyžaduje pokročilejšie znalosti a vykonáva sa len vtedy, ak máte na serveri dostatok zdrojov (nemôžete zvýšiť pamäť na 1 GB memory_limit, ak váš server nemá toľko pamäte) a ak nepoužívate zdieľaný hosting. Táto úprava sa zvyčajne vzťahuje na VPS a servery.
Toto nastavenie je teda globálne a platí pre všetky operácie PHP a skripty na serveri.
Ako zmeniť memory_limit PHP na vašom VPS alebo serveri?
Každý server má jeden alebo viac súborov php.ini v závislosti od svojej konfigurácie. Stačí nájsť príslušný súbor php.ini a zmeniť hodnotu memory_limit.
Ak chcete zistiť umiestnenie súboru php.ini, môžete na serveri cez SSH spustiť jeden z nasledujúcich príkazov:
php --ini
alebo
find / -iname php.ini
alebo
php -i | grep php.ini
Vyššie uvedené príkazy vyhľadajú umiestnenie vašich súborov php.ini. Jednoducho prejdite na toto miesto a upravte súbor podľa potreby. Samozrejme, ak si nie ste istí úpravami, vytvorte si zálohu súboru.
Ako zmeniť memory_limit PHP v .htaccess?
Dôvodom, prečo zmeniť PHP memory_limit cez .htaccess môže byť, že nemusíte mať dostatočné oprávnenia alebo skúsenosti na zmenu tohto nastavenia v php.ini
Toto však nemusí byť vždy vhodné riešenie – najmä ak je podpora .htaccess vypnutá. Potom takáto zmena nemá želaný účinok.
Ak teda meníte memory_limit prostredníctvom súboru .htaccess, pridajte na začiatok súboru .htaccess v koreňovom adresári nasledujúci riadok.
php_value memory_limit 256M
Ako zmeniť PHP memory_limit v systéme WordPress?
Po zmene memory_limit na serveri je potrebné zmeniť nastavenia pamäte pre vašu stránku WordPress priamo v systéme WordPress.
V súbore wp-config.php, priamo v koreňovom adresári inštalácie WordPress, musíte pred riadok s textom „To je všetko, prestaňte upravovať! Šťastné blogovanie.“ („To je všetko, prestaňte upravovať! Šťastné blogovanie.“)
define( 'WP_MEMORY_LIMIT', '256M' );
Súbor je samozrejme potrebné uložiť a nahrať na server (ak ho neupravujete priamo na serveri – FTP).
Ako skontrolovať aktuálnu verziu PHP a memory_limit PHP?
Stačí vytvoriť jednoduchý php súbor (napríklad info.php) a vložiť do neho tieto riadky:
<?php
phpinfo();
?>
Nahrajte tento súbor na FTP a potom ho normálne zobrazte v prehliadači vasedomena.cz/info.php
Výsledkom je potom výpis kompletných informácií o PHP. Položku memory_limit potom ľahko nájdete pomocou klávesovej skratky CTRL+F a zadaním „memory_limit“.
Výsledok môže vyzerať takto:


Optimálna veľkosť memory_limit?
Otázka memory_limit je dosť zložitá. Najmä v kontexte zdieľaného hostingu.
Je pekné mať memory_limit 1 GB a využívať túto pamäť naplno, ALE:
Je dôležité poznamenať, že na zdieľanom hostingu ho môže používať každý. Ak teda desať alebo sto používateľov začne naraz používať toľko pamäte, nevyhnutne to ovplyvní zaťaženie servera a táto akcia môže ovplyvniť všetky stránky, ktoré sú na serveri.
Nízky memory_limit zabezpečí nižšie zaťaženie (z hľadiska pamäte), ale mnohé redakčné systémy a skripty s tým môžu mať problémy.
WordPress vyžaduje na bezproblémový chod aspoň 128 MB memory_limit. Toto sú hodnoty väčšiny webhostingových plánov, ktoré máme v našej databáze. Pre rýchlejšiu orientáciu pripájame odkazy na jednotlivé filtre php memory_limit.
- Hosting s memory_limit 128 MB
- Hosting s memory_limit 256 MB
- Hosting s memory_limit 512 MB
- Hosting s memory_limit 1024 MB
Takže áno. Väčší memory_limit vám umožňuje používať viac pamäte pre jednotlivé skripty, ale musíte brať do úvahy možné zaťaženie servera v dôsledku vyšších memory_limitov.