Kapitola 14 · 14.3
PHP možnosti: upload_max_filesize, memory_limit a max_execution_time
Podívejte se na krátké video
K PHP patří nastavení, která určují, co skript smí: jak velký může být upload, kolik paměti smí skript využít a jak dlouho smí běžet. Tato nastavení upravujete sami v nástroji Select PHP version, na kartě Options. Nepotřebujete tedy soubor php.ini ani pravidla v .htaccess.
Jak upravit možnost
- V DirectAdmin klikněte v části Extra funkce na Select PHP version.
- U položky PHP version zkontrolujte, zda je vybraná správná verze. Možnosti se nastavují pro každou verzi zvlášť.
- Klikněte na kartu Options.
- Klikněte na hodnotu u možnosti, kterou chcete změnit, a vyberte nebo napište novou hodnotu.

Nová hodnota se uloží okamžitě a ihned platí pro všechny webové stránky ve Vašem balíčku, které tuto verzi PHP používají.
Nejdůležitější možnosti
| Možnost | Co dělá? | Kdy ji zvýšit? |
|---|---|---|
| upload_max_filesize | Jak velký může být jeden nahraný soubor. | Když chcete nahrát velké téma, video nebo zálohu a objeví se hlášení, že je soubor příliš velký. |
| post_max_size | Jak velké smí být vše dohromady, co se odesílá najednou (soubor plus formulář). | Vždy společně s upload_max_filesize. Nastavte post_max_size alespoň stejně velké, raději o něco větší. |
| memory_limit | Kolik paměti smí jeden PHP skript využít. | Při hlášení "Allowed memory size of ... bytes exhausted" nebo když si doplněk žádá více paměti. Hodnota 256M je pro většinu webů dostatečná. |
| max_execution_time | Kolik sekund smí skript běžet, než je ukončen. | Když import, export nebo migrace v polovině skončí s chybou "Maximum execution time exceeded". |
| max_input_time | Jak dlouho smí PHP přijímat upload nebo formulář. | Při velkých uploadech přes pomalé připojení. |
| max_input_vars | Kolik polí smí formulář obsahovat. | Když se velké menu nebo stránka s mnoha možnostmi ve WordPress neuloží celá. Nastavte hodnotu například na 3000 nebo 5000. |
| display_errors | Zobrazuje chyby PHP přímo na stránce. | Pouze dočasně při hledání chyby. Poté to opět vypněte: návštěvníci nemusí Vaše chybová hlášení vidět. |
| date.timezone | Časové pásmo pro data a časy. | Je již nastaveno na Europe/Amsterdam. Měňte pouze v případě, že Váš web má fungovat v jiném časovém pásmu. |
Pozor: Vyšší hodnoty nejsou vždy lepší. Skript, který potřebuje hodně paměti nebo času, se počítá do limitů Vašeho balíčku (viz Resource Usage: CPU, paměť a procesy). Hodnotu proto zvyšujte jen tehdy, je li to opravdu potřeba, a ne „pro jistotu“ nastavujte maximum.
Příklad: nahrání velkého souboru
Chcete pomocí migračního doplňku nahrát zálohu o velikosti 200 MB, ale objeví se hlášení, že je soubor příliš velký. Nastavte tedy:
- upload_max_filesize na 256M;
- post_max_size na 256M nebo vyšší;
- případně max_execution_time a max_input_time o něco výše, například na 300.
Poté obnovte stránku doplňku. Nový limit se tam obvykle zobrazí ihned. Pokud se to stále nedaří, přečtěte si Nahrávání příliš velké (chyba 413) nebo časový limit vypršel.
Jde to i v Mém WebOké?
Ano, pro nejpoužívanější možnosti. Zeptejte se AI asistenta v Mém WebOké například: „Nastav upload_max_filesize na 256M“. Asistent za Vás dokáže upravit memory_limit, upload_max_filesize, post_max_size, max_execution_time, max_input_time, max_input_vars a display_errors v nástroji Select PHP version, pro verzi PHP, kterou Váš balíček právě používá. Nejprve uvidíte, co se změní, a sami kliknete na Schválit a provést.
Časté dotazy
Zvýšil jsem hodnotu, ale moje stránky stále vidí tu starou.
Zkontrolujte, zda jste možnost změnili u verze označené (current). Podívejte se také, zda v souboru .htaccess není ještě starší pravidlo, jako je php_value upload_max_filesize, nebo zda u položky PHP Instellingen není nastaveno přepsání pro Vaši doménu (viz PHP Instellingen v DirectAdmin nebo Select PHP version: jaký je rozdíl?). Ty mají přednost.
Jaké je maximum?
Na kartě Options si u některých možností můžete vybrat pouze z nabízeného seznamu. Potřebujete li vyšší hodnotu, než je tam k dispozici, například pro rozsáhlý import? Pak můžete nastavit vyšší hodnotu pomocí pravidla v .htaccess (viz PHP nastavení podle adresáře a přes .htaccess), nebo založte tiket.
Proč jsou tam uvedeny i disable_functions a open_basedir?
Ty slouží k zabezpečení Vašich webových stránek a serveru. Ponechte je tak, jak jsou.
