第一种可能:缓存不足
http://blog.csdn.net/ddjohn/article/details/6648199
最近发现一个怪异的现象,Magento前台只有产品的缩略图不显示。我检查了之前的操作,后台产品图片的选择设置,media文件夹的权限,缓存等一系列可能引发的因素,发现缩略图还是不显示,那就奇怪了,其他服务器上包括本地都是没问题的。缩略图通常是保存在media下类似这样的路径media/catalog/product/cache/1/thumbnail/114x/9df78eab33525d08d6e5fb8d27136e95/i/m/img_8224-2.jpg,缓存文件夹cache是自动生成的。排除了诸多可能的因素,剩下就是服务器配置的问题了,于是首先想到php配置,网上搜罗了一番,发现可能是memory limit的问题,于是把php.ini中的memory_limit = 64MB改为256MB或者更大。清空缓存,刷新,缩略图终于显示了
查找文件的ssh命令: #find / -name 文件名
第二种可能,缺少图像相关的库,看安装php的时候是否加入了一下扩展
--with-gd
--with-jpeg-dir=/usr/local/jpeg6/
--with-png-dir=/usr/local/lib/
--with-zlib-dir=/usr/local/lib/
这几个选项我认为是必须的,而在magento官方网站上的说明去只是提到gd的安装,事实上,如果没有了--with-jpeg- dir,--with-png-dir这两个选项,magento的安装程序是能够正常的进行的,用magento测试脚本进行测试,它也会显示服务器环境满足magento需求,然而,在安装完后正常使用的时候问题来了,magento前台不能够显示产品图片。所以,在碰到magento网站无法显示产品图片时,这个要作为一个可能的原因来考虑。
http://apps.hi.baidu.com/share/detail/23476196
PHP部分配置说明:
--prefix=/usr/local/php php安装目录
--with-apxs2=/usr/local/apache/bin/apxs
--with-config-file-path=/usr/local/php/etc 指定php.ini位置
--with-mysql=/usr/local/mysql mysql安装目录,对mysql的支持
--with-mysqli=/usr/local/mysql/bin/mysql_config mysqli文件目录,优化支持
--enable-safe-mode 打开安全模式
--enable-ftp 打开ftp的支持
--enable-zip 打开对zip的支持
--with-bz2 打开对bz2文件的支持
--with-jpeg-dir 打开对jpeg图片的支持
--with-png-dir 打开对png图片的支持
--with-freetype-dir 打开对freetype字体库的支持
--without-iconv 关闭iconv函数,种字符集间的转换
--with-libxml-dir 打开libxml2库的支持
--with-xmlrpc 打开xml-rpc的c语言
--with-zlib-dir 打开zlib库的支持
--with-gd 打开gd库的支持
--enable-gd-native-ttf 支持TrueType字符串函数库
--with-curl 打开curl浏览工具的支持
--with-curlwrappers 运用curl工具打开url流
--with-ttf 打开freetype1.*的支持,可以不加了
--with-xsl 打开XSLT 文件支持,扩展了libxml2库 ,需要libxslt软件
--with-gettext 打开gnu 的gettext 支持,编码库用到
--with-pear 打开pear命令的支持,php扩展用的
--enable-calendar 打开日历扩展功能
--enable-mbstring 多字节,字符串的支持
--enable-bcmath 打开图片大小调整,用到zabbix监控的时候用到了这个模块
--enable-sockets 打开 sockets 支持
--enable-exif 图片的元数据支持
--enable-magic-quotes 魔术引用的支持
--disable-rpath 关闭额外的运行库文件
--disable-debug 关闭调试模式
--with-mime-magic=/usr/share/file/magic.mime 魔术头文件位置