Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】

Thinkphp 安装 topthink/think-captcha 验证码类库后,就可以使用 {:captcha_img()} 显示验证码了,

具体官网的教程请查看如下链接:

https://www.kancloud.cn/manual/thinkphp5/154295

但是有很多人第一次操作都会因为各种原因而无法正常的显示验证码图片,以下我总结了所有可能导致无法显示验证码图片的原因以及对应的解决方法,仅供参考。

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】


一、GD 库问题

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】

 打开 F12 查看控制台的报错,如果是 500,则代表服务器问题,可以到 TP 自带的 runtime 日志中查看报错原因,

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】

日志显示是没有找到函数 imagettftext(),这种情况就是 GD 库的问题了,建议重新安装 GD 库

二、伪静态问题

打开控制台,如果显示的是 404,则是因为伪静态问题

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】

如果你没有配置路由去隐藏 index.php,而是直接使用 index.php?s=/index/index 这种方式的话,就会出现 404 图片无法打开的问题,

解决方法:

复制 404 链接,然后将链接修改为 index.php?s=captcha.html 就可以正常打开验证码图片。

或者配置隐藏 index.php

Thinkphp 5 验证码无法正常显示的排错以及解决方案 【已解决】