Django-Photologue:上传 jpg 文件时出现错误 500,但上传 png 文件有效

Posted

技术标签:

【中文标题】Django-Photologue:上传 jpg 文件时出现错误 500,但上传 png 文件有效【英文标题】:Django-Photologue : Error 500 while uploading jpg files but uploading png files works 【发布时间】:2015-03-10 11:43:33 【问题描述】:

当我尝试在 django-photologue 中添加 jpg 文件时,我得到“服务器错误 (500)”。

apache 日志显示:

"POST /admin/photologue/photo/add/HTTP/1.1" 500 330 http://www.mywebsite.net/admin/photologue/photo/add/" "Mozilla/5.0 (X11;Linux x86_64)AppleWebKit/537.36(Khtml,像 Gecko) Chrome/39.0.2171.95 Safari/537.36"

该文件实际上已上传到服务器上的媒体文件夹,但它没有显示在管理界面中,我无法将其添加到图库中。

还可以添加 png 文件。

有什么建议吗?

编辑:当我启用 django 的调试时,我得到 ​​p>

异常类型:UnsupportedOperation 异常值:fileno 异常位置:/usr/local/lib/python2.7/dist-packages/photologue/models.py in create_size, line 455 –

【问题讨论】:

如果是非生产环境,只需将 DEBUG 设置为 False,即可查看准确的错误信息。很难推测可能出了什么问题 我在启用调试时得到这个:异常类型:UnsupportedOperation 异常值:fileno 异常位置:create_size 中的 /usr/local/lib/python2.7/dist-packages/photologue/models.py,第 455 行 【参考方案1】:

问题是由于我使用的 Django 版本 (1.6)。我更新到最新的 Django 版本,它解决了这个问题。

【讨论】:

首先我将 Django 从 1.6.7 更新到 1.6.11,并且它工作正常。但不长久。最后,我将photologue 从 3.1.1 降级为 3.0.2。现在好了。【参考方案2】:

正如 karthikr 已经说过的:如果您不提供错误消息/仅提供错误消息的一部分,则很难提供建议。

但是,您说 JPG 文件会导致错误,而 PNG 可以正常工作。这将向我建议您平台上的Pillow 存在问题; Pillow 是 Photologue 的依赖项,安装起来非常麻烦(并且无法正常工作)。尝试使用谷歌搜索“Pillow jpg”以及您的操作系统名称。

【讨论】:

以上是关于Django-Photologue:上传 jpg 文件时出现错误 500,但上传 png 文件有效的主要内容,如果未能解决你的问题,请参考以下文章

博客园上传头像jpg

如何在上传时仅旋转 jpg 和 jpeg?

PHP + 允许上传 JPG 文件

上传 JPG 图像以解析服务器失败

响应式文件管理器上传 JPG 错误继续处理 [关闭]

如何将上传的图像始终转换为 JPG 格式? [关闭]