我正在弹性豆茎上开发一个Django后端系统。
当我上传JPEG图像文件时,我得到错误:解码器JPEG不可用。正在上载。png图像文件不会引起任何问题。
后端环境:
导致错误的源代码:
看法
normalImage = NormalImage(image=image, userProfile=request.user.profile, category = category)
normalImage.save()
模型
class NormalImage(models.Model):
userProfile = models.ForeignKey(UserProfile)
height = models.PositiveIntegerField(editable=False)
width = models.PositiveIntegerField(editable=False)
image = models.ImageField(upload_to=rename_image_file, width_field='width', height_field='height')
size = models.TextField()
price = models.PositiveIntegerField()
tags = models.ManyToManyField(Tag)
category = models.ForeignKey(Category)
created_datetime = models.DateTimeField(auto_now_add=True)
def __init__(self, *args, **kwargs):
super(NormalImage,self).__init__(*args, **kwargs)
if not self.id:
self.size = Size.determineSizeDescription(anWidth=self.width, aHeight=self.height)
self.price = Size.determinePrice(anWidth=self.width, aHeight=self.height)
def get_created_datetime_str(self):
return self.created_datetime.strftime('%Y-%m-%d %H:%M:%S')
def get_image_url(self):
return 'http://photocoapi-env-x2ezvferc7.elasticbeanstalk.com/images/' + str(self.id) + '/'
错误代码:
IOError at/me/requests/decoder jpeg not available请求方法:获取请求URL:
http://photoco-env-z5cnmns3pe.elasticbeanstalk.com/me/requests/Django版本:1.6.5异常类型:IOError异常值:解码器jpeg不可用异常位置:/opt/python/run/venv/lib/python2.7/site-packages/PIL/Image。py在_getdecoder中,第413行Python可执行文件:/opt/Python/run/venv/bin/Python Python版本:2.7.5 Python路径:['/opt/python/run/venv/lib/python2.7/site packages','/opt/python/current/app','/opt/python/bundle/4/app','/opt/python/run/baselinenv/lib64/python27.zip','/opt/python/run/baselinenv/lib64/python2.7','/opt/python/run/baselinenv/lib64/python2.7/plat-linux2','/opt/python/run/baselinenv/lib64/python2.7/lib-tk“,”/opt/python/run/baselinenv/lib64/python2.7/lib old“,”/opt/python/run/baselinenv/lib64/python2.7/lib dynload','/usr/lib64/python2.7','/usr/lib/python2.7','/opt/python/run/baselinenv/lib/python2.7/site packages']
我试图解决这个问题:
>
yum: libjpeg-devel, zlib-devel, freetype-devel
>
然后制作符号链接
$sudo-ln-s/usr/lib64/libjpeg。so/usr/lib$sudo ln-s/usr/lib64/zlib。so/usr/lib$sudo ln-s/usr/lib64/freetype。so/usr/lib
yum未能找到libjpeg-devel。但这对我来说很管用:
packages:
yum:
libjpeg-turbo-devel: []
希望这对别人有帮助<干杯!
在安装pip(用于解码图像的python库)之前,必须先安装支持JPEG图像的依赖项。
因此,您应该尝试:
>
pip卸载枕头
安装jpeg库:
yum安装libjpeg-devel
重新安装枕头:
pip安装枕
您可以在您的应用源代码中包含一个名为“requirements.txt”的文件,其中包含所有必需的依赖项,AWS Elastic Beansta将为您安装依赖项。
您可以使用ebextensions安装yum软件包。创建一个名为的文件。ebextensions/01 yum。在应用程序源代码中配置,并将以下内容放入其中。
packages:
yum:
libjpeg-devel: []
<another-package>: []
此文件为YAML格式,因此缩进很重要。
请在此处阅读有关ebextensions的pacakges部分的更多信息:
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers-ec2.html#customize-容器格式化包
下面是关于使用需求的教程。txt与弹性豆茎。
http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_python_console.html
我在AWS弹性豆茎下处理Python上的jpeg文件时遇到了一些麻烦。 我在.eb扩展/蟒蛇.config文件上有这个: 所以我相信我已经安装并运行了libjpeg(我试过libjpeg-devel,但是yum找不到这个包)。 另外,我requirements.txt: 所以我相信我已经安装了枕头,并在我的环境中工作。 然后,因为我有枕头和libjpeg,所以我尝试使用PIL做一些工作。在Pyth
我可以用超文本传输协议浏览网站,但不能用https,我ChromeERR_CONNECTION_REFUSED。 我的环境是Nodejs(64bit AmazonLinux2015.09 v2.0)上的ExpresJS服务器,运行在Elastic Beanstalk上。我可以在端口80上telnet到EC2弹性公共IP,但在端口443上无法telnet,连接被拒绝。 设置 HTTPS 的步骤 >
假设我在Wordpress中创建了一个站点,它运行在Elastic Beanstalk上。现在,在运行的应用程序上,我将创建帖子/页面,上传图像等。也就是说,数据库中的一些数据、视频、文件和记录将被添加到运行的应用程序中。 从我在AWS控制台中看到的情况来看,我可以部署一个应用程序的不同版本--但是根据上面的场景,如果我部署了一个新版本,我会不会丢失直接上传到正在运行的应用程序中的所有文件(即文件
我在elastic beanstalk上使用django进行开发,我想对apache配置做两个更改: 1.将www.domain.com重定向到domain.com 2.将http://domain.com重定向到https://domain.com 有人知道如何在弹性豆茎中添加重写吗?
配置验证异常:AWS Elastic Beanstatk无法与Amazon EC2通信以确定是否为Elastic Load均衡创建自定义安全组。 在创建AWS Elastic Beanstalk应用程序时,我在尝试继续“查看和启动”时遇到了这个错误。我是新手。请帮忙。
有人知道是否有可能将现有的AWS弹性豆茎环境更改为应用程序负载平衡器(而不是经典的负载平衡器)。 据我所知,只有应用程序ELB可以被AWS WAF和DDOS“屏蔽”保护,所以任何现有的EB应用程序都不能利用这些特性,因为他们有经典的ELB。