Você está visualizando atualmente WordPress 4.7.1: Este tipo de arquivo não é permitido por razões de segurança

WordPress 4.7.1: Este tipo de arquivo não é permitido por razões de segurança

  • Última modificação: 15/02/2019
  • Tempo de leitura: 3 min.

Algumas pessoas relataram no fórum brasileiro do WordPress um problema após atualizar suas instalações para a versão 4.7.1: não é mais possível fazer upload de alguns tipos de arquivos. Esse é um bug já detectado e que pode ser acompanhado aqui.

O WordPress tem uma lista de extensões permitidas. Arquivos .rar, por exemplo, não são suportados por padrão. Para acrescentá-los você poderia usar o código abaixo no functions.php do seu tema. Ele faz uso do filtro upload_mimes.

function custom_upload_mimes( $existing_mimes = array() ) {
    $existing_mimes['rar'] = 'application/x-rar-compressed';
    return $existing_mimes;
}
add_filter( 'upload_mimes', 'custom_upload_mimes' );

Repare que a chave do novo elemento do array é a extensão do arquivo e seu valor é o mimetype. Essa string não era usada para arquivos que não fossem imagens, mas passou a ser testada na versão 4.7.1. O que acontece é que vários arquivos, quando baixados da internet, vem com o mimetype diferente do padrão e, por isso, o WordPress impede o upload. Por isso, ao tentar subir alguns arquivos .pdf, seu WordPress impedirá o upload: o mimetype do seu arquivo está diferente do esperado.

A solução fácil e rápida seria adicionar a seguinte linha ao seu wp-config.php, logo acima da linha que diz /* Isto é tudo, pode parar de editar! :) */:

define( 'ALLOW_UNFILTERED_UPLOADS', true );

Essa solução deve ser temporária: ela permite que todos os tipos de arquivos sejam enviados por todos os usuários, portanto um usuário com apenas função de autor poderia enviar um arquivo executável para o seu servidor.

Teve esse problema? Conseguiu resolver? Não esqueça de deixar sua experiência nos comentários. E reparou que novas extensões podem ser adicionadas com o uso de um filtro? Saiba mais acessando o post sobre hooks no WordPress: actions e filters.

Update 16h27min: Lançaram um plugin que resolve o problema enquanto isso, o Disable Real MIME Check.

Felipe Elia

Associate Director of Platform Engineering na 10up, WordPress Core Contributor, Global Polyglots Mentor na comunidade internacional do WordPress e Locale Manager na comunidade WordPress Brasil.

Este post tem 17 comentários

  1. CIDES Informações e Decisões E

    Estou com o mesmo problema de subir arquivo excel com macros, por gentileza poderiam me apontar um camonho?

  2. Joans Almeida

    Muito bom guia! Um ótimo tutorial semelhante que ajuda quem está tendo mensagens de erro no WordPress que ajudou a resolver o problema que eu estava encontrando aqui é esse tutorial de segurança no WordPress

  3. Johnny Pereira

    Onde encontro esse arquivo functions.php ? Estou tentando fazer upload de algumas musicas e não consigo devido a este erro. Se alguem puder me ajudar ficarei grato.

    1. Felipe Elia

      Na pasta do seu tema. Normalmente os temas estão na pasta wp-content/themes.

  4. Fabiana Mateus

    Pessoal desculpas minha ignorância estou aprendendo agora, em qual linha ou aonde insiro o filtro?

    1. Felipe Elia

      Pode inserir “logo acima da linha que diz /* Isto é tudo, pode parar de editar! 🙂 */”, no wp-config.php.

  5. Emmanuel Alexandre Tavares

    Parabéns cara. Matou na veia. Como pode os caras fazerem esse tipo de m…..

  6. Yuri Motoyama

    Amigo, vc me salvou!! Deu certinho aqui! Abração

  7. Murilo Oliveira

    Cara,Gratidão! Deu certo!

  8. Gabriel Rodrigues

    Fala Felipe!
    Eu tentei esse método para resolver o problema mas aparentemente nada aconteceu… Tentei as duas formas mas não obtive sucesso. Seria o caso de reiniciar o servidor de hospedagem?

    1. Felipe Elia

      Olá Gabriel! Chegou a tentar o plugin também? Qual é o tipo de arquivo que você está tentando usar?

      1. Gabriel Rodrigues

        Oi Felipe! Consegui depois aqui. O erro era meu.
        Muito obrigado pela atenção e pela ajuda.

    2. Henrique Pochmann

      Fala, Gabriel!

      Tentei aqui e funcionou. Porém, tive que inserir os dois códigos. Acredito que não sejam duas formas de fazer e sim apenas uma. Seria isso, @felipe_elia:disqus ?

      No mais, muito obrigado, Felipe por publicar uma solução. Me ajudou. Abraço!

      1. Gabriel Rodrigues

        Valeu Henrique!
        Rolou aqui. Eu estava errando.

        Obrigado pelo help!

      2. Felipe Elia

        Oi Henrique, valeu pela informação. Com qual tipo de arquivo você está trabalhando? Para tipos não suportados pelo WordPress é preciso as duas formas, senão ACHO que só a segunda já resolve. 🙂

        1. Henrique Pochmann

          Ah, bacana. Não cheguei a testar só com a segunda. Estava tendo dificuldades com arquivos “.rar”.

Comentários encerrados.