Úvodná » ako » Ako zvýšiť limit veľkosti uploadu súboru PHP

    Ako zvýšiť limit veľkosti uploadu súboru PHP

    Ak máte webovú aplikáciu, ktorá odovzdáva súbory na server cez skript PHP, možno ste si všimli, že v predvolenom nastavení nemôžete nahrať strašne veľké súbory. Tu je postup, ako ju zmeniť.

    Dôvod, prečo je limit nastavený na pomerne nízku úroveň, je z dôvodov stability a bezpečnosti - škodlivý skript alebo útočník sa môže pokúsiť urobiť váš server s veľkými nahrávkami a dočasne zatvoriť vašu aplikáciu.

    Ak chcete zmeniť hodnoty, musíte upraviť súbor php.ini, ktorý sa bežne nachádza na tejto ceste súboru:

    /etc/php.ini

    Tu sú nastavenia, ktoré chcete zmeniť:

    post_max_size
    Toto nastavenie riadi veľkosť príspevku HTTP a musí byť nastavená väčšia ako nastavenie upload_max_filesize.

    upload_max_filesize
    Táto hodnota nastavuje maximálnu veľkosť súboru na odovzdávanie.

    memory_limit
    Budete sa chcieť uistiť, že limit vašej pamäte skriptov je nastavený na slušnú veľkosť, pravdepodobne väčšiu ako ostatné dve nastavenia.

    Nastavenie premenných

    Hodnoty môžete nastaviť pomocou číselnej hodnoty a následne M pre množstvo MB, ktoré chcete priradiť pre každú premennú. Napríklad, ak chcete povoliť nahranie súborov s veľkosťou 20 MB, použite niečo takéto:

    memory_limit = 64M
    upload_max_filesize = 20M
    post_max_size = 25M

    Po vykonaní tejto zmeny budete musieť reštartovať svoj server Apache s týmto príkazom:

    /etc/init.d/httpd restart

    Nastavenie veľkosti nahrania na aplikáciu

    Toto nastavenie môžete zmeniť pre konkrétnu webovú aplikáciu tak, že ju namiesto toho zadáte do súboru .htaccess v adresári aplikácie. Upozorňujeme, že to bude fungovať len vtedy, ak váš server povolí prepísanie pre váš virtuálny hostiteľ alebo server.

    Do súboru by ste napríklad mohli vložiť nasledovné:

    php_value memory_limit = 64M
    php_value upload_max_filesize = 20M
    php_value post_max_size = 25M

    Po uložení súboru by sa mali vykonať zmeny.