2011-11-09 25 views
3

不确定我究竟发生了什么。我有一个Ubuntu的natty Linux服务器,并有几个virtualenvs。 Django的图像上传在开发virtualenv上运行良好,因此是时候让它在生产环境中工作了。 PIL行为不端那里,所以我试图卸载并与libjpeg的依赖摆弄后重新安装好几次,在这里结束了以下的步骤:http://littlebrain.org/2011/08/21/installing-pil-in-virtualenv-in-ubuntu/图片上传在网络上破碎,但PIL在django shell中运行正常

现在图片上传在所有virtualenvs打破。

的PIL设置总结说,所有应该工作:

--- TKINTER support available 
--- JPEG support available 
--- ZLIB (PNG/ZIP) support available 
--- FREETYPE2 support available 
--- LITTLECMS support available 

,当我在壳体内运行下面的测试工作得很好,既JPG和PNG:

>>> import PIL 
>>> import Image 
>>> import _imaging 
>>> i = Image.open("someimage.jpg") 
>>> i 
<JpegImagePlugin.JpegImageFile image mode=RGB size=600x599 at 0x9646C0C> 
>>> i.load() 
<PixelAccess object at 0x2b86510> 

但是当我尝试上传图像在CMS我得到可怕:

Upload a valid image. The file you uploaded was either not an image or a corrupted image. 

任何人都有一个想法是什么c会出错吗?

+0

重复? http://stackoverflow.com/questions/1402002/why-cant-i-upload-jpg-files-to-my-django-app-via-admin –

+1

这是略有不同,但他们似乎类似我不我认为我们有同样的问题。我无法上传PNG或JPG,而上述用户对PNG没有问题。 – user573117

+1

文件是否完全上传?你可以在“upload_to”目录中看到它吗?如果没有,网络服务器对该目录有权限? – mtnpaul

回答

0

调试提示:在代码中添加一些打印语句(或添加日志记录)到代码中存在问题的地方。

import sys 
print sys.path 
print PIL.__file__ 
print your_image_object 
print type(your_image_object) 

这样的事情。也许它会查明你的问题

另一个想法:你说你在virtualenv中安装了点子。当您通过网络服务器运行virtualenv时,它是否处于活动状态?