thinkphp5.0的验证码安装和相关错误

问题

只要是之前使用thinkphp5框架搭建网站的时候发现不管如何调用验证码都无法使用,按照官网要求,使用composer安装验证码出现报错Fatal error: Class 'Route' not found in XXXX

 
 

解答

  1. 在使用之前,主要还是在php版本上需要注意。thinkphp5版本在php7上可以很好的运行,但当thinkphp5运行在php5.4上就会存在许多问题。可能造成插件不可使用。

  2.  

    thinkphp5.0可以使用composer进行安装。thinkphp5的大部分插件也支持使用composer进行安装和引用,在这里引用一篇其他作者写好的window系统如何使用composer并加载thinkphp框架。在安装完成composer之后,可以在项目文件中使用composer create-project topthink/think tp5  --prefer-dist命令直接安装thinkphp

     

    Window系统怎么安装Composer并加载ThinkPhP框架

     
  3.  

    安装验证码过程使用composer require topthink/think-captcha进行对验证码的安装,如果出现以下问题,原因是vendor内缺少topthink文件,可以使用composer require topthink/framework 5.1.x-dev进行安装(版本号好像一定要加这个,不然就算安装成功后,在安装验证码时还是会报错,原因暂时还不清楚)

  4.  

    之后再使用composer require topthink/think-captcha进行安装验证码,就可以成功安装验证码

  5.  

    目前验证码安装完毕,但却出现了Fatal error: Class 'Route' not found in XXXX报错现象,

  6.  

    之后仔细看了下,发现存在两种可能性(1.需要在配置中添加'auto_start'   => true, 'url_route_on' => true配置,2thinkphp版本问题,可以在thinkphp->library->think->App.php文件中找到版本号,主要是使用composer require topthink/framework (5.1.x-dev)安装时安装的版本与thinkphp5版本号不对)

  7.  

    在配置文件中添加内容后还是接着出现了之前的报错。所以确认了问题出现在版本上,之后就可以安装相应的版本了。。。我这边试了下,还是使用了重新安装tp5框架的方法,应为我不知道我使用的版本是多少。使用命令composer create-project topthink/think tp5 --prefer-dist重新安装tp5框架

  8.  

    到目前为止,整体就安装完毕了,在项目中重新加载使用验证码的地方,就可以看到验证码了

注意

php版本最好高于php5.6

参考:

thinkphp5.0的验证码安装和相关错误_百度经验
https://jingyan.baidu.com/article/49711c619ab02cfa441b7ce2.html

thinkphp5.0的验证码安装和相关错误的更多相关文章

  1. thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法

    这篇文章主要介绍了thinkPHP5.0框架验证码调用及点击图片刷新简单实现方法,结合简单示例形式分析了thinkPHP5框架验证码相关配置.后台验证.前台刷新等操作技巧,学习thinkphp源码的朋 ...

  2. Nginx 安装后 相关错误解决

    1,安装 https://blog.csdn.net/wxyjuly/article/details/79443432 nobody 改为了 www /configure --user=www --g ...

  3. ThinkPHP5.0源码学习之注册错误和异常处理机制

    在base.php文件中,用一句代码\think\Error::register();实现错误和异常处理机制的注册. // 注册错误和异常处理机制 \think\Error::register(); ...

  4. thinkPHP5.0.22初体验---request相关用法

    如果浏览器要返回美观排列的json数据,可以安装火狐浏览器的插件 返回XML的数据格式 渲染模板的用法 return $this->fetch('index/index2')效果 扒掉stirp ...

  5. Centos7配置ThinkPHP5.0完整过程(一)

    在Centos中配置PHP服务器环境,首先要安装Apache的http服务,然后安装php解析环境,最后再配置ThinkPHP5.0. 首先安装HTTP sudo yum install httpd ...

  6. thinkphp5.0验证码使用

    如果没有安装验证码类,可在composer.json 文件的require里面添加 "topthink/think-captcha":"1.*",然后compo ...

  7. Linux 下Redis集群安装部署及使用详解(在线和离线两种安装+相关错误解决方案)

    一.应用场景介绍 本文主要是介绍Redis集群在Linux环境下的安装讲解,其中主要包括在联网的Linux环境和脱机的Linux环境下是如何安装的.因为大多数时候,公司的生产环境是在内网环境下,无外网 ...

  8. thinkphp5.0安装

    ThinkPHP5的环境要求如下: PHP >= 5.4.0 PDO PHP Extension MBstring PHP Extension CURL PHP Extension 严格来说,T ...

  9. ThinkPHP5.0框架开发--第1章 Tp5.0安装

    ThinkPHP5.0框架开发--第1章 Tp5.0安装 第1章 Tp5.0 安装 ======================================================== 今 ...

随机推荐

  1. java语言MySQL批处理

    本质来讲就是使用Statement和PreStatement的addBatch()方法 代码 import java.sql.*; public class GetConnection{ public ...

  2. 《从零開始学Swift》学习笔记(Day 46)——下标重写

    原创文章.欢迎转载.转载请注明:关东升的博客 下标是一种特殊属性. 子类属性重写是重写属性的getter和setter訪问器,对下标的重写也是重写下标的getter和setter訪问器. 以下看一个演 ...

  3. 基于redis ae实现 Linux中的文件系统监控机制(inotify)

    (英文部分为转的.代码是个人代码) 1 What's inotify  The inotify API provides a mechanism for monitoring file system ...

  4. 编写shell脚本获取本机的网络地址。  比方:本机的ip地址是:192.168.100.2/255.255.255.0,那么它的网络地址是 192.168.100.1/255.255.255.

    ubuntu@ubuntu:~$ vim getlocalip.sh #!/bin/bash #ifconfig | grep inet | awk '$2' | awk -F : '$2' IP=` ...

  5. c# 获取文件夹下面所有文件夹列表

    方法一: string dirPath = @"D:\App1"; List<string> dirs = new List<string>(Directo ...

  6. iOS定义静态变量、静态常量、全局变量

    静态变量 当我们希望一个变量的作用域不仅仅是作用域某个类的某个对象,而是作用域整个类的时候,这时候就可以使用静态变量. staticstatic修饰的变量,是一个私有的全局变量.C或者Java中sta ...

  7. [JZOJ 5906] [NOIP2018模拟10.15] 传送门 解题报告(树形DP)

    题目链接: https://jzoj.net/senior/#contest/show/2528/2 题目: 8102年,Normalgod在GLaDOS的帮助下,研制出了传送枪.但GLaDOS想把传 ...

  8. Linux进程精讲

    进程相关概念 程序和进程 程序,是指编译好的二进制文件,在磁盘上,不占用系统资源(cpu.内存.打开的文件.设备.锁....) 进程,是一个抽象的概念,与操作系统原理联系紧密.进程是活跃的程序,占用系 ...

  9. Linux java9 jshell操作

    1.上传 2.解压 配不配环境变量都行 进入到jdk-9.0.4的bin目录下 执行./jshell命令 我第一次出现如下的情况 等了一会没反应就ctrl+z了.然后又重新执行./shell命令 超时 ...

  10. Android 对话框黑色边框的解决

    代码解决 : Dialog dialog = new Dialog(this); Window win = dialog.getWindow(); win.setBackgroundDrawableR ...