Co je to memory_limit a k čemu slouží?

Co je to memory_limit a k čemu slouží?

Publikováno: 31. srpna 2020|Aktualizováno: 11. července 2026|Affiliate prohlášení

memory_limit je jeden z parametrů PHP, na které bychom měli dát pozor při výběru webhostingu. V tomto článku se podíváme, co memory_limit znamená, jaká velikost je optimální a hlavně jak ho v roce 2026 správně změnit — na sdíleném hostingu i na vlastním serveru.

Oficiální zdroj: memory_limit v manuálu PHP (php.net)

Co je to memory_limit?

memory_limit je maximální množství operační paměti, které smí spotřebovat jeden PHP proces (tedy zpracování jednoho požadavku). Kdykoli návštěvník odešle požadavek a PHP ho vyřizuje, spustí se PHP proces s tímto stropem. Ve výchozím nastavení je memory_limit 128 MB. Pokud proces limit překročí, PHP ho ukončí fatální chybou (a web nejčastěji vrátí HTTP 500).

Kdy o změně memory_limit uvažovat?

Nejčastěji tehdy, když skript spadne kvůli nedostatku paměti. Chyba se projeví hláškou:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate x bytes) in /cesta/ke/skriptu.php

nebo

PHP Fatal error: Out of memory (allocated x) (tried to allocate x bytes)

U WordPressu se místo chyby často objeví jen bílá obrazovka (tzv. WSOD). Přesnou příčinu najdete ve výpisu error_log.

Kde a jak memory_limit změnit (2026)

Postup se liší podle toho, jestli jste na sdíleném hostingu, nebo máte vlastní VPS/server. Řadíme od nejjednodušší cesty.

1. Ovládací panel hostingu (nejjednodušší)

Většina sdílených hostingů dnes umožňuje měnit PHP direktivy přímo v administraci. Hledejte volby jako „Nastavení PHP“, „PHP selector“, „Select PHP Version“, v cPanelu „MultiPHP INI Editor“, v DirectAdminu „Custom PHP.ini“. Tam memory_limit jen přepíšete a uložíte. Pozor: na sdíleném hostingu bývá hodnota shora omezená — víc, než hosting dovolí, si nenastavíte.

2. Soubor .user.ini (dnešní standard sdílených hostingů)

Moderní hostingy běží na PHP-FPM / FastCGI, kde se lokální nastavení dělá souborem .user.ini v kořenovém adresáři webu. Přidejte řádek:

memory_limit = 256M

Změna se projeví s malým zpožděním — PHP si .user.ini cachuje (user_ini.cache_ttl, standardně 300 s).

3. Soubor .htaccess — pozor, jen s mod_php

Starší návody radí zápis do .htaccess:

php_value memory_limit 256M

Tohle funguje pouze pod Apache modulem mod_php. Na dnes běžnějším PHP-FPM/FastCGI direktiva php_value nefunguje a může web shodit chybou HTTP 500. Pokud si nejste jistí, použijte .user.ini nebo panel hostingu.

4. Globální změna na VPS/serveru (php.ini)

Na vlastním serveru měníte hodnotu globálně v php.ini. To vyžaduje, abyste měli na serveru dostatek paměti (nemá smysl nastavovat 1 GB, když ho server fyzicky nemá). Umístění souboru zjistíte přes SSH:

php --ini

nebo

php -i | grep php.ini

Upravte řádek memory_limit, uložte a restartujte PHP-FPM (např. systemctl restart php8.4-fpm) nebo webový server.

Jak změnit memory_limit ve WordPressu?

WordPress má vlastní strop nad rámec serverového nastavení. Do souboru wp-config.php (v kořenovém adresáři instalace) přidejte před řádek „That’s all, stop editing! Happy blogging.“ tyto konstanty:

define( 'WP_MEMORY_LIMIT', '256M' );      // limit pro běžný web
define( 'WP_MAX_MEMORY_LIMIT', '512M' );  // vyšší limit pro administraci a cron

WordPress si ale nemůže vynutit víc, než dovolí serverový memory_limit — pokud hosting povoluje jen 128 MB, musíte nejdřív navýšit hodnotu na straně hostingu (kroky výše).

Jak zkontrolovat aktuální hodnotu?

Nejrychleji přes phpinfo(). Vytvořte soubor info.php:

<?php
phpinfo();
?>

Nahrajte ho na web, otevřete vasedomena.cz/info.php a přes CTRL+F najděte memory_limit. Po kontrole soubor smažte. Na příkazové řádce funguje i:

php -i | grep memory_limit
memory_limit ve výpisu phpinfo
Hodnota memory_limit ve výpisu phpinfo()

Jaká je optimální velikost memory_limit?

Otázka je ošemetná hlavně u sdílených hostingů. Vyšší memory_limit umožní náročnějším skriptům doběhnout, ale na sdíleném serveru tuto paměť využívají všichni zákazníci najednou — když si desítky webů začnou brát maximum, projeví se to na zátěži a rychlosti celého serveru. Nízký limit zase drží zátěž nízko, ale řada redakčních systémů a e-shopů si s ním neporadí.

Praktické vodítko pro rok 2026:

  • 128 MB — minimum pro WordPress, stačí na jednoduché weby,
  • 256 MB — pohodlná hodnota pro WordPress s pluginy a menší e-shopy (nejčastější doporučení),
  • 512 MB a víc — větší e-shopy (WooCommerce, Shopware), náročné importy a pluginy.

Konkrétní tarify a jejich parametry si porovnáte v kategorii webhosting.

Časté dotazy

Jak opravit chybu „Allowed memory size exhausted“?

Navyšte memory_limit (nejjednodušeji v panelu hostingu nebo přes .user.ini), u WordPressu i konstantu WP_MEMORY_LIMIT. Pokud chyba přetrvává, hledejte příčinu — typicky konkrétní plugin, špatně napsaný skript nebo příliš velký import.

Zrychlí vyšší memory_limit můj web?

Ne. memory_limit je jen strop — sám o sobě výkon nezvyšuje. Web zrychlí spíš cachování, novější verze PHP (8.x) a kvalitní hosting, ne prosté navýšení paměti.

Proč mi hosting nedovolí nastavit vyšší memory_limit?

Na sdíleném hostingu je hodnota omezená kvůli spravedlivému sdílení zdrojů mezi zákazníky. Pokud potřebujete trvale vyšší limit, je řešením vyšší tarif, VPS nebo dedikovaný server.

Zůstaňte informováni

Získejte nejnovější hostingové nabídky, kupóny a odborné tipy přímo do vašeho emailu.

Co je to memory_limit a k čemu slouží? | Hostingy