mac缺少imagettftext()、freetype问题随笔

14 篇文章 0 订阅
12 篇文章 0 订阅

macOS自带phpgd库有些问题,当用到imagettftext()freetype 相关功能时会出问题,我遇到的问题是:

在使用TinkPHPtopthink/think-captcha 时,验证码图片无法正常显示,ThinkPHPlog 信息为:

[ 2017-12-28T16:38:06+08:00 ] 127.0.0.1 GET /captcha.html
[ error ] [0]致命错误: Call to undefined function think\captcha\imagettftext()

这个问题我在去年遇到过,也解决了,去年记录的文章为:macos缺少freetype终极解决方案

但是过了一年,macOSHomebrew 都发生了一些变化,所以原来的方法就不那么行得通了。

去年我使用的是

brew install php56 --with-apche --with-freetype

结果今年--with-apache 不好使了,变成了--with-httpd ,也就是

brew install php72 --with-httpd --with-freetype

但一切正常安装完成之后,却发现没有生成apache LoadMoule 所需要的 .so 文件,查看github相关issue ,发现这是一个共性问题,迫于无奈,只好选择nginx

几个月之前我曾经使用该方法成功配置好环境,具体操作疏于记录。

此次我才用了一个新的方法,就是上文提到的那篇博文里的“一句话脚本” 。

链接 : https://php-osx.liip.ch

由于服务器在亚马逊云,我一开始科学上网运行脚本,脚本运行了好久没有反应,我认为此法不通;但后来再试,经过漫长等待,终于装好了。

装好之后,记得把/etc/apache2/httpd.conf中引入的php.so文件换成新的:

LoadModule php7_module  /usr/local/php5/libphp7.so

是的****/php5/libphp7.so 就这么神奇,,,可能之后会变吧,找一找,这个问题不大。

不过要注意的是这只换了apachephp,没有换cli 的,所以,在命令行中运行一些东西可能和apache运行的效果有所不同,不过也很容易解决,不展开记录了。

最后,,装好之后,phpinfo() 中会有明显的提示,如下图。。

这里写图片描述

怎么说呢,,,丧心病狂的感觉。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值