Pagina inicial » como » Como aumentar o limite de tamanho de upload de arquivo PHP

    Como aumentar o limite de tamanho de upload de arquivo PHP

    Se você tem um aplicativo da Web que envia arquivos para o servidor por meio de um script PHP, talvez tenha notado que, por padrão, não é possível fazer upload de arquivos terrivelmente grandes. Veja como mudar isso.

    O motivo pelo qual o limite é definido como padrão é baixo por motivos de estabilidade e segurança - um invasor ou um script mal-intencionado pode tentar DoS em seu servidor com uploads grandes de arquivos e encerrar seu aplicativo temporariamente.

    Para alterar os valores, você precisará editar o arquivo php.ini, normalmente encontrado neste caminho de arquivo:

    /etc/php.ini

    Aqui estão as configurações que você deseja alterar:

    post_max_size
    Essa configuração controla o tamanho de uma postagem HTTP e precisa ser maior que a configuração upload_max_filesize.

    upload_max_filesize
    Este valor define o tamanho máximo de um arquivo de upload.

    memory_limit
    Você vai querer certificar-se de que seu limite de memória de script está definido para um tamanho decente, provavelmente maior do que qualquer uma das outras duas configurações.

    Configurando as Variáveis

    Você pode definir os valores usando um valor numérico seguido de M para a quantidade de MB que você deseja alocar para cada variável. Por exemplo, para permitir o upload de 20MB, você usaria algo assim:

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

    Você precisará reiniciar seu servidor Apache depois de fazer essa alteração, com este comando:

    /etc/init.d/httpd restart

    Definindo o tamanho do upload por aplicativo

    Você pode fazer essa alteração de configuração para um aplicativo da Web específico, colocando-o no arquivo .htaccess, no diretório do aplicativo. Observe que isso só funcionará se o seu servidor tiver ativado substituições para seu host virtual ou servidor.

    Por exemplo, você poderia colocar o seguinte no arquivo:

    php_value memory_limit = 64 milhões
    php_value upload_max_filesize = 20M
    php_value post_max_size = 25M

    Depois de salvar o arquivo, as alterações devem ser aplicadas.