为了账号安全,请及时绑定邮箱和手机立即绑定

在 Windows 中从 Laravel 项目中删除 Redis

在 Windows 中从 Laravel 项目中删除 Redis

PHP
子衿沉夜 2021-11-13 10:32:03
没有 Redis 运行,我的项目将无法启动。如果我尝试在 Laravel 中没有运行 redis 的情况下打开一个页面,我会收到此消息:“无法建立连接,因为目标机器主动拒绝它。[tcp://127.0.0.1:6379]”我试过 1) php artisan config:cache, 2) php artisan clear:cache, 3) composer remove predis/predis 4) composer remove predis 5) 删除 redis 的实例 6) 通过命令行卸载 redis任何帮助将不胜感激!谢谢!APP_NAME=LaravelAPP_ENV=localAPP_KEY=base64:duZtCSIh12vDNOdmYW2kmMr9ONILxsH55f46npt5/Kg=APP_DEBUG=trueAPP_LOG_LEVEL=debugAPP_URL=http://localhostDB_CONNECTION=mysqlDB_HOST=127.0.0.1DB_PORT=3306DB_DATABASE=forumDB_USERNAME=DB_PASSWORD=BROADCAST_DRIVER=logCACHE_DRIVER=fileSESSION_DRIVER=fileQUEUE_DRIVER=syncMAIL_DRIVER=smtpMAIL_HOST=smtp.mailtrap.ioMAIL_PORT=2525MAIL_USERNAME=bc05914be7f1dbMAIL_PASSWORD=0c73506a138d3fMAIL_ENCRYPTION=nullPUSHER_APP_ID=PUSHER_APP_KEY=PUSHER_APP_SECRET=RECAPTCHA_SECRET=
查看完整描述

2 回答

?
犯罪嫌疑人X

TA贡献2080条经验 获得超4个赞

我刚才遇到了同样的问题。错误:

“无法建立连接,因为目标机器主动拒绝它。[tcp://127.0.0.1:6379]”

这意味着应用程序中的某些内容仍然使用 redis 作为其服务。

  1. 检查控制器和/或模型的 redis 连接或 redis 方法并删除所有这些。

  2. 在配置中,您要检查缓存、数据库、队列和文件系统。为此,请确保您的 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;将来需要它的文件。在生产中最好完全删除这些。

phpredisor相同,predis如果您以后要使用它,则无需删除它们。

这里的关键是检查您的所有配置以更好地了解 redis 的内容在哪里,或者只是使用您的文本编辑器,只需使用 redis 关键字搜索所有文件即可。


查看完整回答
反对 回复 2021-11-13
?
翻过高山走不出你

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


查看完整回答
反对 回复 2021-11-13
  • 2 回答
  • 0 关注
  • 107 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信