Mac PHP 图片验证码无法显示问题

查阅很多资料,问题如下:


mac系统升级到yosemite后,php也自动升级,运行phpcms时发现后台验证码显示不出来。很明显,缺少gd库,需要重新编译安装php,其过程十分辛苦。

但使用brew安装比较方便。

所以操作步骤如下:

1、安装brew(已经安装的略过)
​2、安装php5.6
3、安装freetype,jpeg,libpng,gd,zlib

具体过程:


安装homebrew

$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

这里由于网速原因估计会比较慢
完成后,接下来自检一下:

$ brew doctor Please note that these warnings are just used to help the Homebrew maintainers with debugging if you file an issue. If everything you use Homebrew for is working fine: please don't worry and just ignore them. Thanks! Warning: A newer Command Line Tools release is available. Update them from Software Update in the App Store.

出现一些警告信息,其中也说明了如果brew运行正常就不用管它。CTRL+C退出,继续往下


配置第三方源

因为homebrew没有自带php的包,所以要添加新的源进来:

$ brew tap homebrew/dupes 
$ brew tap homebrew/versions $ brew tap homebrew/homebrew-php

安装php

install安装

$ brew install php56

安装过程需要一段时间,等一下就可以了。

安装freetype,jpeg,libpng,gd,zlib

brew rm freetype jpeg libpng gd zlib brew install freetype jpeg libpng gd zlib 

先删除之前的再安装新的

然后创建链接

brew link --overwrite libpng freetype jpeg 
#注意添加overwrite,否则可能会提示冲突 这里可能提示目录权限错误问题: 
Error: Could not symlink include/libpng16/png.h 执行命令: 

sudo chmod -R 777 /usr/local/include/libpng16 
sudo chmod -R 777 /usr/local/include/freetype2

配置apache支持新安装的php
安装的php在/usr/local/opt/php56目录,apache这边需要修改配置文件,加载进新安装的php模块。

$ LoadModule php5_module /usr/local/opt/php56/libexec/apache2/libphp5.so

不要忘记重新启动下apache

$ sudo apachectl restart

重启完成后,看看验证码是否显示了

本作品采用《CC 协议》,转载必须注明作者和本文链接
每一天都要进步一点点!
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!