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

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

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

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

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


一、GD 库问题

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

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

二、伪静态问题

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

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

解决方法:

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

或者配置隐藏 index.php

原文地址:https://www.cnblogs.com/ryanzheng/p/12343643.html

时间: 2024-08-10 15:06:06

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

MFC 编辑框中字体大小改变,行高不能改变,只能显示一半的问题,已解决。

CKagulaCEdit是CEdit的一个继承类,m_edit的CKagulaCEdit类型的一个变量 调用的时候,是这样的: 编辑框中字体大小改变,行高不能改变,只能显示一半的问题,问题如下: 这时的显示是这样的: 添加 CEdit::SetFont(m_pfont);这行后, 显示正常:

Qt文件编程 换行处显示小方块问题【已解决】

使用Qt写一个hex合并程序,遇到了在window下换行显示小方块问题,如下图: 通过查看Qt自带的帮助文档关于openMode的介绍,找到解决办法: 在Qt的文件打开代码中都添加 | QIODevice::Text问题即可解决. 如下:

PPT保存pps演示文档时,在另一个电脑中字体显示不正常!(已解决)

thinkphp ajax删除 隐藏与显示

知识点: 1.ajax删除: 2.一个同步实现三个异步的效果. html 部分 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <hea

ecshop验证码图片无法显示终极解决办法

ecshop验证码图片无法显示终极解决办法 ECSHOP教程/ ecshop教程网(www.ecshop119.com) 2014-06-06 客户在安装好ecshop之后所有前台的证码不显示,后台可以显示,ECSHOP开发中心总结了解决办法分享给各位朋友. 可以在后台有,前台不显示 打开includes/init.php文件,将如下这段代码屏蔽即可. /* 判断是否支持 Gzip 模式 */if (!defined(‘INIT_NO_SMARTY’) && gzip_enabled())

PHP网站验证码图片不显示解决方法

找到php.ini配置文件之后,双击打开,hp_gd2.dll,找到如下图1-2所示.查看extension=php_gd2.dll前面是否有;号,如果有的话,去除,保存.编者注:如果php.ini是在系统目录下的话,保存之后重起电脑才生效,如果是系统变量里直接指定的话,重起IIS服务器或者重起apache服务器即可生效(不用重起服务器电脑). 如果找不到php.ini文件,在别的电脑拷贝一个即可. PHP网站验证码图片不显示解决方法

dedecms织梦系统后台验证码图片不显示的解决方法

网站迁移后,dedecms织梦系统后台验证码图片不显示的解决方法通用解决方案-取消后台验证码功能因为没有验证码,不能进后台,所以修改php文件源代码:方法一:打开dede/login.php 找到如下代码    if(($validate=='' || $validate != $svali) && preg_match("/6/",$safe_gdopen)){        ResetVdValue();        ShowMsg('验证码不正确!','logi

linux系统中部署项目,验证码不能正常显示,而windows下面的tomcat下运行,验证码能正常显示,之解决办法

linux下验证码功能不能正常显示 步骤方法:1.修改${TOMCAT_HOME}/bin/catalina.sh (windows修改catalina.bat).2.查找到-Djava.io.tmpdir="$CATALINA_TMPDIR"这行,3.并在这一行下加入:-Djava.awt.headless=true \,一共需要在修改文件里面添加7次,4.修改好"保存"再重启tomcat后网页的验证码就可以正确显示了. 原文地址:https://www.cnbl

Pythonic论坛怪怪的’居民’显示[已解决]

之前使用Pythonic搭建的论坛people界面显示有点问题 第一个用户不显示,问了下作者,作者回复说这个Link只有~/people/而没有用户名 就点到为止了. 按说我使用syncdb同步时注册的管理员应该显示在最前面的.但是却不是这样.前段时间也挺忙的,就先放一放了. ------ 今天继续顺着url读源码.people的view还有people_list模板还是挺易读的,似乎没有什么问题. 于是想看看数据库中的用户是什么样子的. 这CMD的显示我也是醉了…上网找了一圈,发现个Navic