昨天有位客戶咨詢我一個問題,他在使用然之OA系統(tǒng)時涉及到圖片顯示時提示下面錯誤窗口江锨≌暄裕看到這個錯誤提示斜棚,我們肯定都會想到是不是PHP的gd庫未安裝,但是這位朋友說他用phpinfo查看了下PHP環(huán)境该窗,發(fā)現(xiàn)gd擴展已存在弟蚀,而且問題依舊存在,所以才頭疼問題出在哪里酗失。下面是這位朋友給我的截圖:
![](http://blog.cnezsoft.com/file-read-4163.png)
![](http://blog.cnezsoft.com/file-read-4164.png)
看到這里义钉,可能一些細心的朋友已經(jīng)發(fā)現(xiàn)問題所在了,很明顯,這位用戶的gd擴展安裝得不完整规肴。這里我先直接給大家展示gd庫完整安裝后的截圖:
![](http://blog.cnezsoft.com/file-read-4165.jpg)
所以我們在檢查PHP環(huán)境捶闸,要看一下擴展是否安裝齊全、完整拖刃,針對上面的問題删壮,本文我們將和大家一起分享linux/windows系統(tǒng)中如何完整安裝php-gd擴展。
linux系統(tǒng)篇
1.CentOS系統(tǒng)
關(guān)于GD擴展
gd擴展是一個開源的圖像處理庫兑牡,它通過提供一系列用來處理圖片的API央碟,使其可以用來創(chuàng)建圖表、圖形发绢、縮略圖以及其他圖像的處理操作硬耍。gd擴展支持JPG、PNG边酒、GIF等常見的圖片格式经柴,所以在安裝php-gd擴展之前,我們需要安裝libpng墩朦、jpegsrc坯认、freetype這三款軟件。下面安裝步驟中,具體的路徑設(shè)置大家根據(jù)自己的實際情況進行調(diào)整牛哺。
安裝 freetype
wget http://ftp.twaren.net/Unix/NonGNU/freetype/freetype-2.5.5.tar.gz tar -xf freetype-2.5.5.tar.gz cd freetype-2.5.5 ./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 ./configure --prefix=/usr/local/jpeg make && make install
安裝libpng
wget http://jaist.dl.sourceforge.net/project/libpng/libpng16/1.6.31/libpng-1.6.31.tar.gz tar zxvf libpng-1.6.31.tar.gz cd libpng-1.6.31 ./configure --prefix=/usr/local/libpng make && make install
安裝GD擴展
不再重新編譯php陋气,還是用phpize添加新擴展,注意不要漏掉make clean這一步引润。
cd /data/php-5.6.14/ext/gd/ make clean /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
![](http://blog.cnezsoft.com/file-read-4167.png)
此時在/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/目錄下有出現(xiàn)了gd.so文件巩趁。
![](http://blog.cnezsoft.com/file-read-4168.png)
接著修改php.ini文件 添加一行
extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20131226/gd.so
最后重啟服務(wù),查看php-gd擴展信息即可淳附。
2.ubuntu系統(tǒng)
sudo apt-get install php5-gd
注意不是php-gd而是php5-gd议慰。
最后重啟服務(wù)
windows篇
修改PHP配置文件php.ini:
將php.ini文集中的extension=php_gd2.dll ?前面的;去掉即可奴曙。
最后重啟服務(wù)别凹。
小結(jié)
本文我們一起分享了如何在linux(centos、ubuntu)/Windows系統(tǒng)中完整安裝php-gd擴展洽糟,以解決系統(tǒng)應(yīng)用使用過程中諸如imagecreatefromjpeg()函數(shù)無法調(diào)用的問題炉菲。如果大家在安裝過程中有其他問題歡迎和大家一起討論交流,我們共同學(xué)習(xí)坤溃,共同進步拍霜。
更多技術(shù)文章,歡迎關(guān)注微信公眾號
![](http://blog.cnezsoft.com/file-read-4166.jpg)
![](http://blog.cnezsoft.com/1PZHj6Hx43xKFF.gif)