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 协议》,转载必须注明作者和本文链接
推荐文章: