当前位置: 首页 > news >正文

ThinkPHP6 多应用模式之验证码模块的配置与验证

Thinphp6 官方的验证码模块的配置是有问题的,或者说需要手工配置。

在配置期间,我尝试了多种(包括按照官方文档、路由等)方法都验证失败。

存在2个问题:
1、多应用模式下,验证码的配置文件依然读取全局的配置;
2、多应用模式下,无法完成验证码的验证(captcha_check($captcha))。

解决办法(假设多应用名称为admin):

1、安装过程略;

2、开启本应用的Session(默认是关闭的)

文件:app/admin/middleware.php

<?php
// 全局中间件定义文件
return [// 全局请求缓存
//     \think\middleware\CheckRequestCache::class,// 多语言加载// \think\middleware\LoadLangPack::class,// Session初始化\think\middleware\SessionInit::class
];

3、新建控制器Captcha
文件:app/admin/controller/Captcha.php

<?php
/*** End file Captcha.php*/namespace app\admin\controller;use app\BaseController;
use think\captcha\facade\Captcha as captchaMain;class Captcha extends BaseController
{public function verify(){return captchaMain::create('admin');}
}

4、复制配置文件到本应用根目录
文件:app/admin/config/captcha.php
原文件:app/config/captcha.php

5、模板文件使用

<div class="captcha"><img src="/admin/captcha" alt="captcha"  onclick="this.src='/admin/captcha?'+Math.random();" />
</div>

注意:刷新验证码的地址也改过来。

http://www.lryc.cn/news/207380.html

相关文章:

  • 数据结构笔记——树和图(王道408)(持续更新)
  • Redis 主从
  • 嵌入式学习笔记(63)位操作实战
  • 8位机adc采样正弦波频率
  • react中使用监听
  • Java基础总结
  • 基于SSM的OA办公系统
  • 【第25例】IPD体系进阶:需求分析团队RAT
  • 5G与无人驾驶:引领未来交通的新潮流
  • FreeRTOS学习2018.6.27
  • 【异常】理解Java中的异常处理机制
  • 很久没写JAVA程序了,原来用GMAIL发送邮件这么简单
  • Spring Security获得认证流程解析(示意图)
  • scrapy typeerror: attrs() got an unexpected keyword argument ‘eq‘
  • 非侵入式负荷检测与分解:电力数据挖掘新视角
  • 抽丝剥茧,Redis使用事件总线EventBus或AOP优化健康检测
  • 【Tailwind CSS】当页面内容过少,怎样让footer保持在屏幕底部?
  • Docker基础管理
  • 基于YOLOv8模型的烟雾目标检测系统(PyTorch+Pyside6+YOLOv8模型)
  • 【代码随想录01】数组总结
  • (SpringBoot)第二章:Spring创建和使用
  • 力扣刷题 day56:10-26
  • 『第四章』一见倾心:初识小雨燕(上)
  • elasticsearch-7.9.3 单节点启动配置
  • 【2024秋招】2023-10-9 同花顺后端笔试题
  • 完美的错误处理:Go 语言最佳实践分享
  • vue首页多模块布局(标题布局)
  • 嵌入式系统>嵌入式硬件知识
  • LeetCode 1402. 做菜顺序【排序,动态规划;贪心,前缀和,递推】1679
  • 【多线程】探索Java中的多线程编程