S čím vám můžeme pomoci?

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.

Obsah návodu
  1. Co je soubor .user.ini
  2. Postup
  3. Nejpoužívanější direktivy
  4. Jak ověřit, že se nastavení projevilo
  5. Co souborem .user.ini změnit nelze
  6. Řešení problémů

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

  1. Připojte se k webhostingu přes FTP (viz Jak se připojit k webhostingu pomocí FTP) a otevřete složku web.
  2. Pokud soubor .user.ini ještě neexistuje, vytvořte ho v obyčejném textovém editoru (Poznámkový blok, Visual Studio Code). Nepoužívejte Word.
  3. 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
  4. 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.
  5. Počkejte několik minut. PHP načítá .user.ini s 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

  1. Vytvořte soubor info.php s obsahem <?php phpinfo(); a nahrajte ho do složky web.
  2. V prohlížeči otevřete adresu https://vasedomena.cz/info.php.
  3. 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.
  4. Po kontrole soubor info.php smažte, protože zveřejňuje podrobnosti o nastavení serveru.
Upozornění

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 web a jmenuje se přesně .user.ini (ne například user.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_size není menší než upload_max_filesize. Ve WordPressu může nahrávání omezovat i nízký memory_limit.

Nenašli jste co hledáte?

Obraťte se na nás.
Odpovíme nejpozději do 24 hodin.

Napsat podpoře