You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel+phpRedis多连接异常:调用自定义连接仍返回默认连接

Laravel多Redis连接配置问题修复

1. 配置文件字段错误

你的database.php中自定义连接redisCustomConnection的port配置存在明显错误:

'redisCustomConnection' => [
    // ...
    'port'     => env('REDIS_CUSTOM_HOST', '6379'), // 这里用错了env键
    // ...
],

此处port对应的环境变量写成了REDIS_CUSTOM_HOST,导致端口读取的是主机地址的值,若环境变量未正确加载则 fallback 到默认的6379。

修复: 将port的环境变量键改为REDIS_CUSTOM_PORT:

'redisCustomConnection' => [
    'url'      => env('REDIS_CUSTOM_URL'),
    'host'     => env('REDIS_CUSTOM_HOST', '127.0.0.1'),
    'password' => env('REDIS_CUSTOM_PASSWORD', null),
    'port'     => env('REDIS_CUSTOM_PORT', '6379'), // 修正此处
    'database' => env('REDIS_CUSTOM_DB', '0'),
],

2. .env文件配置问题

你的.env文件存在重复定义和缺失项:

REDIS_CUSTOM_URL=mycustom value
REDIS_CUSTOM_HOST=mycustom value
REDIS_CUSTOM_PASSWORD=mycustom value
REDIS_CUSTOM_HOST=mycustom value // 重复定义
REDIS_CUSTOM_DB=mycustom value // 缺少REDIS_CUSTOM_PORT

重复的REDIS_CUSTOM_HOST可能导致环境变量读取异常,同时缺少自定义连接的端口配置项。

修复: 删除重复项并补充端口配置:

REDIS_CUSTOM_URL=your-custom-url
REDIS_CUSTOM_HOST=your-custom-host
REDIS_CUSTOM_PASSWORD=your-custom-password
REDIS_CUSTOM_PORT=your-custom-port // 添加此项
REDIS_CUSTOM_DB=your-custom-db

3. 清除配置缓存

Laravel会缓存配置文件,修改配置后必须清除缓存才能生效:

php artisan config:clear

完成以上步骤后,重新调用Redis::connection('redisCustomConnection')即可获取正确的自定义连接。

内容的提问来源于stack exchange,提问作者Judge Jules

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 13:09:29