>因为在项目中使用到了 `Intervention Image` 扩展用户处理图片,因为LNMP没有开启,所以需要在服务器中安装fileinfo和gd扩展 ### 进入lnmp安装源目录 `cd /lnmp1.3-full/src/php-5.6.22/ext/` `ls` 可以看到有很多扩展模块 ###安装fileinfo扩展 `cd fileinfo` `/usr/local/php/bin/phpize` `./configure --with-php-config=/usr/local/php/bin/php-config` `make && make install` 安装完毕后,添加扩展: `vi /usr/local/php/etc/php.ini` 在文件最下方添加如下代码: `extension=fileinfo.so` 重启php: `/etc/init.d/php-fpm restart` > 第一次安装时,总是报错,查询发现是我的服务器内存不够,于是增加内容,解决之。。。 ### 安装gd扩展 >使用上述方法同样可以安装gd扩展,但是安装后,重启php总是报错 `gd.so: undefined symbol: php_gd_gdImageJpegCtx`,所以放弃此方法,实施第二套方案。 #### 安装前置库 freetype ,jpegsrc,libpng ##### 安装前可以先确认是否安装,若已安装,则不需要重复安装,只需要最后选对位置即可。 - 安装freetype `cd /` `wget http://download.savannah.gnu.org/releases/freetype/freetype-2.4.0.tar.bz2` `tar jxvf freetype-2.4.0.tar.bz2` `cd freetype-2.4.0` `./configure --prefix=/usr/local/freetype && make && make install` - 安装jpegsrc `wget http://www.ijg.org/files/jpegsrc.v9.tar.gz` `tar zxvf jpegsrc.v9.tar.gz` `cd jpeg-9` `CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/jpeg && make && make install` - 安装libpng `wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.29/libpng-1.6.29.tar.gz` `tar zxvf libpng-1.6.29.tar.gz` `cd libpng-1.6.29` `CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/libpng && make && make install` #### 接下来安装gd `cd /lnmp1.3-full/src/php-5.6.22/ext/gd` `/usr/local/php/bin/phpize` `./configure --with-php-config=/usr/local/php/bin/php-config --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype` `make && make install` #### 修改配置文件 安装完毕后,添加扩展: `vi /usr/local/php/etc/php.ini` 在文件最下方添加如下代码: `extension=fileinfo.so` 重启php: `/etc/init.d/php-fpm restart` ### 查看php安装扩展 `php -m` ### 错误信息 若出现如下错误: `/usr/include/ft2build.h:56:38: error: freetype/config/ftheader.h: No such file or directory /usr/local/src/php-5.3.28/ext/gd/gd.c:83:12: error: #include expects “FILENAME” or make: *** [gd.lo] Error 1` 则执行 `ln -s /usr/include/freetype2/freetype/ /usr/include/freetype`,然后继续make