我遇到了错误,当我通过Paperclip将图像上传到S3时,出现错误:has an extension that does not match its contents
。在本地机器上,我没有遇到这样的问题,仅用于生产。更新rails 4.1.1 -> 4.1.16
和ruby 2.1.5 -> 2.3.1
并将实例更改为AWS后,就会发现这种情况。
这是我的验证:
validates_attachment :document,
content_type: { not: "application/x-msdownload" }
我不明白问题是什么。我上传的任何文件,无论是图像还是文档(任何扩展名)都会收到此错误。请告诉我,它可以连接什么?
UPD
我在日志中找到了这个:
[paperclip] Content Type Spoof: Filename example1.png (["image/png"]), content type discovered from file command: . See documentation to allow this combination.
UPD 2
This解决了我的问题