mews/captcha安装后不生效需手动发布配置、注册路由并确保session正常;默认math驱动易被误判,验证码路由须置于所有路由之前且避免中间件拦截,验证失败多因session失效或字段名不匹配。
composer require mews/captcha 安装后不生效?
不是装完就能用,mews/captcha 默认不自动注册服务提供者(Laravel 5.5+ 也需手动确认),且配置文件不会自动生成。
- 运行
php artisan vendor:publish --provider="Mews\Captcha\CaptchaServiceProvider"才会生成config/captcha.php - Laravel 9+ 若启用了 Package Discovery,仍需检查
config/app.php中是否残留旧版providers手动注册项,冲突会导致配置不加载 -
captcha.php里默认的default驱动是math(算术题),不是图形验证码,容易误以为“没显示”
验证码图片返回 404 或空白?
路由未正确声明或中间件拦截是主因,mews/captcha 的图片 URL 是通过路由生成的,不是静态资源。