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 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

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