当前位置:网站首页 >  攻略

迅睿CMS关闭登录验证码的三种方法及详细步骤

时间:2026年06月14日 11:26:24 来源:易频IT社区

为什么需要关闭登录验证码

在迅睿CMS的日常使用中,部分场景下需要关闭登录验证码功能。例如,在开发测试阶段频繁登录时,验证码会降低效率;当网站仅限内部人员使用时,验证码可能显得多余;某些第三方系统集成需要自动登录,验证码会成为障碍。系统默认开启验证码是为了防止恶意登录攻击,但在上述可控环境下,关闭它是合理的需求。

准备工作

在进行任何修改前,请务必完成以下操作,以避免因操作失误导致网站无法访问。

备份关键文件

登录你的网站服务器,找到迅睿CMS的根目录。你需要备份两个核心文件:

  • config/system.php:系统核心配置文件。
  • dayrui/App/Http/Controllers/Admin/Login.php:后台登录控制器文件。

你可以通过FTP工具下载这些文件到本地,或在服务器上使用命令行复制:

cp /网站根目录路径/config/system.php /网站根目录路径/config/system.php.backup
cp /网站根目录路径/dayrui/App/Http/Controllers/Admin/Login.php /网站根目录路径/dayrui/App/Http/Controllers/Admin/Login.php.backup

方法一:通过系统配置文件关闭(推荐)

这是最直接、最安全的官方方法,通过修改系统配置参数实现。

步骤一:定位配置文件

使用代码编辑器(如VS Code、Notepad++)打开网站根目录下的 config/system.php 文件。

步骤二:修改配置参数

在配置文件中找到 ‘sys_login_captcha_off’ 这一项。如果找不到,可以在文件的配置数组(通常以 `$system` 或类似变量开头)末尾添加。你需要将其值设置为 1

// 找到类似以下配置段
‘sys_login_captcha_off’ => 0, // 0表示开启验证码,1表示关闭
// 将其修改为
‘sys_login_captcha_off’ => 1,

如果该配置项不存在,请在配置数组的合适位置(例如,与其他 `sys_` 开头的配置项放在一起)添加这一行。

步骤三:保存并清除缓存

保存文件并上传回服务器原位置,覆盖旧文件。修改配置文件后,必须清除系统缓存使其生效。登录迅睿CMS后台,依次进入 系统 -> 系统维护 -> 更新缓存,点击“开始更新”。或者,你也可以直接删除网站根目录下 cache 文件夹中的所有文件和文件夹(除 `index.html` 外)。

完成以上步骤后,刷新后台登录页面,验证码应该已经消失。

方法二:通过修改登录控制器代码关闭

此方法通过直接注释掉生成和验证验证码的代码行来实现,适用于对代码有一定了解的用户。

步骤一:打开登录控制器文件

使用代码编辑器打开 dayrui/App/Http/Controllers/Admin/Login.php 文件。

步骤二:定位验证码生成代码

迅睿CMS关闭登录验证码的三种方法及详细步骤

在文件中搜索关键词 ‘captcha’‘checkCaptcha’。通常,验证码生成逻辑在显示登录页面的方法中(如 `index` 方法)。找到类似以下代码:

// 生成验证码
$data[‘captcha’] = $this->getCaptcha();

步骤三:注释验证码生成与验证代码

你需要注释掉两处代码:

  1. 注释生成验证码的代码行:在负责渲染登录视图的方法里,找到生成 `$data[‘captcha’]` 的代码行,在其前面添加 `//` 或使用 `/ /` 将其注释掉。
  2. 注释验证码校验的代码行:在处理登录表单提交的方法里(如 `login_ajax` 或 `check` 方法),找到验证验证码是否正确的条件判断语句,通常是 `if (!$this->checkCaptcha(...)) { ... }`,将整个判断块注释掉,或者直接将其中的逻辑改为跳过验证。

示例如下:

// 注释前
if (!$this->checkCaptcha(trim($this->input->post(‘captcha’)))) {
exit(dr_json(0, ‘验证码不正确’));
}
// 注释后
// if (!$this->checkCaptcha(trim($this->input->post(‘captcha’)))) {
//     exit(dr_json(0, ‘验证码不正确’));
// }

步骤四:保存并测试

保存文件并上传覆盖。由于修改了代码文件,通常需要清除OPcache或PHP缓存。最简便的方法是重启一下PHP服务(如php-fpm),或者等待一段时间缓存自动过期。之后测试登录,验证码应不再显示和校验。

方法三:通过后台安全设置关闭(部分版本适用)

某些较新版本的迅睿CMS可能在后台提供了图形化开关。

操作路径

登录迅睿CMS后台,依次进入:系统 -> 系统设置 -> 安全配置系统 -> 权限系统 -> 安全设置

查找开关

在安全设置页面中,仔细查找名为 “后台登录验证码”“启用登录验证” 或类似描述的选项。如果存在,通常会是一个复选框或开关按钮。将其状态设置为“关闭”或“禁用”。

保存设置,系统可能会提示你更新缓存。按照提示操作后,验证码即被关闭。

注意:并非所有版本都有此功能。如果找不到该选项,请使用方法一或方法二。

验证与排查

完成上述任一方法操作后,请按以下步骤验证:

  1. 完全退出后台或使用浏览器无痕模式。
  2. 访问后台登录页面(通常是 `你的域名/admin.php` 或 `你的域名/index.php?s=admin`)。
  3. 检查验证码图片及输入框是否已消失。
  4. 尝试使用正确的账号密码登录,确认可以成功进入后台。

如果验证码仍然存在

  • 确保你修改了正确的文件并已保存上传。
  • 强制刷新浏览器缓存:按Ctrl+F5(Windows/Linux)或Cmd+Shift+R(Mac)。
  • 确认已彻底清除迅睿CMS的系统缓存和浏览器缓存。
  • 如果使用方法二,检查是否遗漏了某处验证码调用代码。

安全提醒

关闭登录验证码会降低后台入口的安全强度。为确保安全,强烈建议你同时采取以下补偿措施:

  • 强化后台登录密码:使用长度超过12位,包含大小写字母、数字和特殊符号的复杂密码。
  • 限制后台访问IP:如果服务器环境允许(如Nginx、Apache),配置仅允许公司或家庭的固定IP地址访问 `/admin.php` 等后台路径。
  • 修改后台入口文件:将默认的 `admin.php` 重命名为一个不易猜测的名称。
  • 定期检查登录日志:在迅睿后台的“系统日志”中,定期查看是否有异常登录尝试。

请根据你的实际使用环境,谨慎评估关闭验证码的利弊,并务必实施至少一项上述安全加固措施。

相关推荐

最新

热门

推荐

精选

标签

易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。

Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图