Bug no mozilla firefox pode impedir o upload de arquivos .pdf

Descobri isso depois de perder algumas horas depurando a área de downloads ( Admin > Catalogo > Downloads ) no Opencart 2.0. Quando fazia o upload de um arquivo PDF. Sempre que fazia um upload o Opencart 2.0 retornava a seguinte mensagem de erro:

Este tipo de arquivo não é permitido!

Verifiquei as configurações em: Admin > Configurações > Loja > Servidor >

 33300000 bytes

Extensões de arquivos permitidas:

txt
png
jpe
jpeg
jpg
gif
bmp
ico
tiff
tif
svg
svgz
zip
rar
msi
cab
mp3
qt
mov
pdf
psd
ai
eps
ps
doc
rtf
xls
ppt
odt
ods

:

text/plain
image/png
image/jpeg
image/gif
image/bmp
image/vnd.microsoft.icon
image/tiff
image/svg+xml
application/zip
application/x-rar-compressed
application/x-msdownload
application/vnd.ms-cab-compressed
audio/mpeg
video/quicktime
application/pdf
image/vnd.adobe.photoshop
application/postscript
application/msword
application/rtf
application/vnd.ms-excel
application/vnd.ms-powerpoint
application/vnd.oasis.opendocument.text
application/vnd.oasis.opendocument.spreadsheet

Como pode-se ver acima, estava  tudo ok, então eu parti para a depuração do código, editando o controller /admin/controller/catalog/download.php, adicionando algumas informações como extensão do arquivo e mimetype a mensagem de erro, que estava retornando binary/octet-stream no mimetype.

Depois de algumas googladas depois descobri que o problema não era com o Opencart 2.0, mas sim um bug do navegador Mozilla Firefox. 🙁

https://bugzilla.mozilla.org/show_bug.cgi?id=953274

Alguns posts tinham sugestões de incluir mimetypes adicionais para fazer que isso funcionasse no Mozilla Firefox, mas por questões de segurança eu prefiri não manter o código como estava e não permitir o upload de arquivos binários como alguns posts sugeriam. Pra mim, bastou trocar de navegador (google chrome) para que tudo voltasse a funcionar normalmente.

Fica aí a dica para quem se deparar com o mesmo problema ao tentar fazer upload de arquivos .pdf no Opencart ou qualquer outra webapp utilizando o Mozilla Firefox.


Comments

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *