Pagrindinis » kaip » Kaip padidinti PHP failo įkėlimo dydžio ribą

    Kaip padidinti PHP failo įkėlimo dydžio ribą

    Jei turite žiniatinklio programą, įkeliančią failus į serverį per PHP scenarijų, galbūt pastebėjote, kad pagal nutylėjimą negalite įkelti nepaprastai didelių failų. Štai kaip tai pakeisti.

    Priežastis, dėl kurios riba yra nustatyta gana maža pagal numatytąją reikšmę, yra dėl stabilumo ir saugumo priežasčių - kenkėjiškas scenarijus ar užpuolikas gali bandyti atlikti jūsų serverį su dideliais failų įkėlimais ir laikinai sustabdyti jūsų taikymą.

    Jei norite keisti vertes, kurias turėsite redaguoti savo php.ini failą, paprastai jį rasite šiame failo maršrute:

    /etc/php.ini

    Čia pateikiami nustatymai, kuriuos norite pakeisti:

    post_max_size
    Šis nustatymas valdo HTTP įrašo dydį, ir jis turi būti nustatytas didesnis nei įkelti_max_filesize nustatymas.

    upload_max_filesize
    Ši reikšmė nustato maksimalų įkėlimo failo dydį.

    memory_limit
    Norėsite įsitikinti, kad jūsų scenarijaus atminties riba yra nustatyta tinkamo dydžio, tikriausiai didesnė nei bet kuri kita iš dviejų nustatymų.

    Kintamųjų nustatymas

    Vertes galite nustatyti naudodami skaitinę vertę, po kurios M, kiek MB norite priskirti kiekvienam kintamajam. Pvz., Norint įkelti 20 MB failų, naudokite kažką panašaus:

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

    Kai atliksite šį pakeitimą, turėsite iš naujo paleisti „Apache“ serverį, naudodami šią komandą:

    /etc/init.d/httpd paleiskite iš naujo

    Įkėlimo dydžio nustatymas vienai programai

    Galite nustatyti, kad šis nustatymas pasikeistų konkrečiai žiniatinklio programai, jį įterpiant į .htaccess failą, į programos katalogą. Atminkite, kad tai veiks tik tuomet, jei jūsų serveris įgalins virtualiojo kompiuterio arba serverio perrašymus.

    Pvz., Į failą galite įtraukti:

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

    Įrašę failą, pakeitimai turėtų būti taikomi.