制作注册网页到图文验证码这一项,因为涉及图片需求,现在要为后台添加GD库。
服务器是阿里云,操作系统是CentOS 7.0 ,配置环境是 Nginx+mysql57+php5.6.24 。
本人用Xshell 5进行安装,用Xftp 5 管理文件。
先安装 gd 前置库 : freetype ,jpegsrc,libpng。
1. freetype
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
2. jpegsrc
wget http://www.ijg.org/files/jpegsrc.v9.tar.gz
tar zxvf jpegsrc.v9.tar.gz
cd jpeg-9
CFLAGS=
"-O3 -fPI
C"
./configure --prefix=/usr/local/jpeg && make && make install
3. libpng
wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.18/libpng-1.6.18.tar.gz
tar zxvf libpng-1.6.18.tar.gz
cd libpng-1.6.18
CFLAGS=
"-O3 -fPIC"
./configure --prefix=/usr/local/libpng && make && make install
接下来需要cd到php源码的 gd 目录,否则会报 cannot find config.m4 之类的错误。
然后再这个目录执行命令 /usr/local/php/bin/phpize。什么时候需要用到 phpize 呢?当我们需要再加些模块,又不想重新编译php,这些我们就可以用phpize了。我的PHP安装在 /usr/local/php/ 这个目录里,可以根据个人情况修改。
1 | /usr/local/php/bin/phpize |
现在可以进行单独编译安装了:
1 | ./configure --with-php-configure=/usr/local/php/bin/php-config --with-jpeg-dir=/usr/local/jpeg --with-png-dir=/usr/local/libpng --with-freetype-dir=/usr/local/freetype |
3 | ./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 |
接着修改php.ini文件 在 ;extension=php_zip.dll 下面添加一行 extension=gd.so
重启 Nginx 之后再看看是否安装成功了。再执行 /usr/local/php/bin/php -m 查看gd模块是否加载成功。
2 | /usr/local/php/bin/php -m |
console列出:
01 | [root@nowamagic gd]# /usr/local/php/bin/php -m |
看到gd了,说明gd库安装成功。
接下来只要重启 php-fpm 即可:
2 | /usr/local/php/sbin/php-fpm |
phpinfo()一下,看看。
OK,安装成功。