Jak nastavit limity PHP pomocí souboru .user.ini
Jak si sami zvýšit limit nahrávání, paměť nebo dobu běhu skriptu pomocí souboru .user.ini v kořeni webu.
3 minuty čtení 9 kroků
Obsah návodu
Výchozí nastavení PHP na hostingu vyhovuje většině webů. Někdy ale potřebujete nahrát větší soubor, než dovoluje limit, nebo skript potřebuje více paměti či delší čas na běh. Tyto hodnoty si můžete upravit sami pomocí souboru .user.ini, který umístíte do kořenové složky webu.
Co je soubor .user.ini
Jde o obyčejný textový soubor, ze kterého PHP načítá vlastní hodnoty nastavení pro váš web. Funguje podobně jako php.ini, ale platí jen pro složku, ve které leží, a pro všechny její podsložky. Název souboru začíná tečkou, proto bývá ve FTP klientovi skrytý. Pokud ho nevidíte, zapněte zobrazení skrytých souborů.
Postup
- Připojte se k webhostingu přes FTP (viz Jak se připojit k webhostingu pomocí FTP) a otevřete složku
web. - Pokud soubor
.user.iniještě neexistuje, vytvořte ho v obyčejném textovém editoru (Poznámkový blok, Visual Studio Code). Nepoužívejte Word. - Vložte potřebné řádky, každou direktivu na samostatný řádek:
upload_max_filesize = 64M post_max_size = 64M memory_limit = 256M max_execution_time = 120 - Soubor uložte v kódování UTF-8 a nahrajte ho do složky
web. Pokud tam už soubor je, přepište ho. - Počkejte několik minut. PHP načítá
.user.inis prodlevou (obvykle do pěti minut), změna se tedy neprojeví okamžitě.
Nejpoužívanější direktivy
| Direktiva | Význam | Příklad |
|---|---|---|
upload_max_filesize |
Maximální velikost jednoho nahrávaného souboru. | 64M |
post_max_size |
Maximální velikost celého odeslaného formuláře. Musí být stejná nebo větší než upload_max_filesize. |
64M |
memory_limit |
Kolik paměti smí jeden skript použít. | 256M |
max_execution_time |
Jak dlouho smí skript běžet (v sekundách). | 120 |
display_errors |
Zda se chyby PHP zobrazují přímo na stránce (On / Off). Zapínejte jen dočasně při hledání chyby. |
Off |
Jak ověřit, že se nastavení projevilo
- Vytvořte soubor
info.phps obsahem<?php phpinfo();a nahrajte ho do složkyweb. - V prohlížeči otevřete adresu
https://vasedomena.cz/info.php. - Stiskněte Ctrl+F a vyhledejte název direktivy, například
upload_max_filesize. Ve sloupci Local Value vidíte hodnotu platnou pro váš web, ve sloupci Master Value výchozí hodnotu serveru. - Po kontrole soubor
info.phpsmažte, protože zveřejňuje podrobnosti o nastavení serveru.
Hodnoty nelze zvyšovat neomezeně. Server má nastavené horní meze, které soubor .user.ini nepřekročí. Pokud potřebujete vyšší hodnotu, než se vám daří nastavit, napište na podporu.
Co souborem .user.ini změnit nelze
Tímto souborem nezměníte verzi PHP, seznam nainstalovaných rozšíření ani systémové direktivy, například open_basedir nebo disable_functions. Tyto změny provádí technická podpora na e-mailu podpora@datahost.cz. Postup pro změnu verze PHP najdete v návodu Jak změnit PHP verzi?.
Řešení problémů
- Změna se neprojevila. Počkejte několik minut a zkontrolujte, že soubor leží přímo ve složce
weba jmenuje se přesně.user.ini(ne napříkladuser.ini.txt). - Web po nahrání souboru přestal fungovat. Zkontrolujte překlepy. Každý řádek musí mít tvar
direktiva = hodnota. Pro rychlý test soubor dočasně přejmenujte. - Nahrávání souborů stále selhává. Ověřte, že
post_max_sizenení menší nežupload_max_filesize. Ve WordPressu může nahrávání omezovat i nízkýmemory_limit.