2 回答
TA贡献2080条经验 获得超4个赞
我刚才遇到了同样的问题。错误:
“无法建立连接,因为目标机器主动拒绝它。[tcp://127.0.0.1:6379]”
这意味着应用程序中的某些内容仍然使用 redis 作为其服务。
检查控制器和/或模型的 redis 连接或 redis 方法并删除所有这些。
在配置中,您要检查缓存、数据库、队列和文件系统。为此,请确保您的 env 文件中没有与 redis 相关的任何内容:
// .env
CACHE_DRIVER=redis // change this to file
QUEUE_CONNECTION=redis // change this to sync
// I was using redis for azure cache and I missed this one because it was hard coded,
// now I placed it inside env file
AZURE_CACHE_STORE=redis // change this to file
// In fact u can skip commenting this out
#REDIS_CLIENT=predis
#REDIS_HOST=redis
#REDIS_PASSWORD=null
#REDIS_PORT=6379
无需在 config/app.php 中注释或删除 Redis
如果您打算稍后简单地切换出 redis,则无需删除use Redis;
将来需要它的文件。在生产中最好完全删除这些。
与phpredis
or相同,predis
如果您以后要使用它,则无需删除它们。
这里的关键是检查您的所有配置以更好地了解 redis 的内容在哪里,或者只是使用您的文本编辑器,只需使用 redis 关键字搜索所有文件即可。
TA贡献1875条经验 获得超3个赞
如果您不想安装任何缓存服务,如Redis或Memcached,您可以使用Laravel 上的file或database驱动程序。
要更改缓存驱动程序,您必须CACHE_DRIVER将.env文件变量更改为file,或者修改config/cache.php文件。
默认的 cache.php 配置文件如下所示:
/*
|--------------------------------------------------------------------------
| Default Cache Store
|--------------------------------------------------------------------------
|
| This option controls the default cache connection that gets used while
| using this caching library. This connection is used when another is
| not explicitly specified when executing a given caching function.
|
| Supported: "apc", "array", "database", "file",
| "memcached", "redis", "dynamodb"
|
*/
'default' => env('CACHE_DRIVER', 'file'),
该env()函数从第一个参数上定义的环境变量中获取数据,并回退到第二个参数上定义的值。因此,如果您的 .env 文件定义了 CACHE_DRIVER 变量,它将忽略第二个参数值。
有关更多信息,请参阅https://laravel.com/docs/5.8/cache
- 2 回答
- 0 关注
- 107 浏览
添加回答
举报