文档章节

解决thinkphp5验证码在CentOS7上面无法显示的问题

半缘修道半缘君丶
 半缘修道半缘君丶
发布于 2018/06/28 15:41
字数 485
阅读 343
收藏 0

在做公司项目的过程中,发现在本地的验证码没有问题,在linux上死活加载不出来,对着一张验证码图片看了一天,才发现是php的GD库没安装,折腾了好久,安装GD库也出现了好多问题!

我的php是源码安装的,

先安装 gd 前置库 : freetype ,jpegsrc,libpng。

1.freetype

wget  http://downloads.sourceforge.net/freetype/freetype-2.7.1.tar.bz2

tar jxvf freetype-2.7.1.tar.bz2

-----------------------------------------我是分割线----------------------------------------------------

如果解压的时候出现以下错误,你可以尝试着安装bzip2,因为可能是你解压缩软件没安装

tar (child): lbzip2: Cannot exec: No such file or directory 
tar (child): Error is not recoverable: exiting now 
tar: Child returned status 2 
tar: Error is not recoverable: exiting now

解决方法: yum install bzip2

-----------------------------------------我是分割线----------------------------------------------------

cd freetype-2.7.1

./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 -fPIC" ./configure --prefix=/usr/local/jpeg

make && make install

3.libpng

wget https://downloads.sourceforge.net/project/libpng/libpng16/1.6.34/libpng-1.6.34.tar.gz

tar zxvf libpng-1.6.34.tar.gz
cd libpng-1.6.34
CFLAGS="-O3 -fPIC" ./configure --prefix=/usr/local/libpng
make && make install

接下来切换到php源码的ext的gd目录

cd /php-7.1.2/ext/gd

然后运行:/usr/local/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

最后修改php.ini文件,添加一行 extension=gd.so

然后重启apache:

cd /usr/local/apache/bin/

./apachectl stop

./apachectl start

netstat -tnlp #查看apache是否已经开启

如果出现下面的就表示apache重启成功

至此,GD库安装结束,验证码应该能看到了~

© 著作权归作者所有

半缘修道半缘君丶
粉丝 0
博文 22
码字总数 7133
作品 0
扬州
后端工程师
私信 提问
thinkphp5用composer下载验证码类提示错误

1、首先使用Composer下载验证码插件。如果没有composer,点击这里下载并安装 安装完成后,使用以下命令修改composer配置文件,使用国内镜像。原因你懂的。 然后打开cmd窗口,进入项目根目录,...

woaijorden
2018/06/27
0
0
deepin15.4 thinkphp5 nginx 验证码不显示的问题

验证码调用代码 解决验证码图片不显示的办法: sudo apt-get install php-gd php5-gd; sudo /etc/init.d/nginx restart sduo /etc/i...

wushan37
2017/09/29
0
0
thinkphp5验证码的问题

我使用的是最新的thinkphp发现 验证码不显示。config也配置了。求助

邢安栋
2018/06/29
807
2
ThinkPhp5 | 模块分析

ThinkPhp5框架是一款基于MVC的轻量级开发框架,其模块化的搭建,简单有效,相比于之前的版本,是一次颠覆性的改变。本文,结合一些网站的常用功能,简要分析一下基本原理,小试牛刀一把。 相...

采风JS
2017/06/10
0
0
开始认识ThinkPHP5

index.php中加载框架 // 定义应用目录define('APPPATH', DIR_ . '/tp/application/');// 加载框架引导文件require DIR . '/tp/thinkphp/start.php'; appindexcontroller下的index修改......

LINDXXX
2016/10/08
128
0

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部