最近把开发服务器的apache httpd+php_mod换成了nginx+php-fpm,感觉后者在性能和稳定性上是有所提高,在1G的xeon老爷机上的ab压力测试时-c 1000 -n 1000都能基本正常跑完,不像前者搞个100就跑不起来。
测试中发现开发环境对Yii的支持并不完全,其中之一是php的gd扩展不支持Freetype,另外也没有安装imagick。
本着一个程序员的“不折腾不舒服斯基”精神,下载了freetype、GD、ImageMagick、imagick等源码包,准备又开始折腾。没想到一折腾就是将近十几个小时的时间搭了进去。
最终搞定之后两个感觉:
1、GD、imagick果然是linux上有名的troublemaker;
2、网上资料太多雷同和抄袭,真正能解决这一系列问题的资料又太分散,需要花费很多时间和精力去检索和分辨。
因此在此把自己在解决这些问题中获得的经验和教训整理成笔记,一来做个备忘,方便日后查询,二来也可共享大众,期望能帮助遇上类似问题的朋友节省时间。
笔记如下:
一、安装zlib
    因为下载、解压、编译、安装等命令网上都能搜索到,故略过。下同;
二、安装libpng
三、安装jpeg
- # ./configure ... --enable-shared
    否则不生成共享库,会影响后续的编译安装;
四、安装freetype
五、安装GD
- # ./configure ... --with-php-config=/usr/local/php/bin/php-config --enable-shared ...
六、编译
    因为php源码包所带的gd扩展代码包存在bug的缘故,
- # ./configure ... --with-gd // 可编译通过
- # ./configure ... --with-gd=/gd-path // 错误
七、安装ImageMagick
    ImageMagick的最新source在configure时须链接zlib-1.2.3,所以如zlib版本较高,则无法编译通过。
    所以只有通过yum安装:
- # yum install ImageMagick
- # yum install ImageMagick-devel
   (如不安装devel包,则无法在后面的imagick安装工作中正常configure)
八、安装imagick
    imagick-3.0.1-stable版有bug,实际上无法正常configure。
    使用imagick-3.1.0RC2版本则能正常编译安装。
 
 
                     
            
        













 
                    

 
                 
                    