关于laravel 5.3 使用redis缓存出现 找不到Class 'Predis\Client' not found的问题
昨天使用5.3.版本的laravel框架开发公司新项目,
发现将cache和session设置为了redis,执行了一下首页访问。
如图:

laravel 版本号

简单配置一下控制器路由,
Route::get('home', 'HomeController@index');
Route::get('/', 'HomeController@index');
怎么配置控制器就不细说了。
说问题重点了(敲黑板!!!!!):
访问出现错误!!!
说找不到一个类:找不到Class 'Predis\Client' not found
查了查源码,发现少了一个vendor/目录下少了一个包predis,
执行:composer require predis/predis 安装这个包就好。
注:版本<5.3可以成功解决问题。>5.3的,失败!
控制台错误信息如下:
Updating dependencies (including require-dev)
Failed to decode response: zlib_decode(): data error
Retrying with degraded mode, check https://getcomposer.org/doc/articles/troubleshooting.md#degraded-mode for more info
Your requirements could not be resolved to an installable set of packages.
Problem 1
- The requested package laravel/passport (locked at v1.0.0, required as 1.0.8) is satisfiable by laravel/passport[v1.0.0] but these conf
lict with your requirements or minimum-stability.
Problem 2
- Installation request for laravel/passport 1.0.8 -> satisfiable by laravel/passport[v1.0.8].
- laravel/passport v1.0.8 requires symfony/psr-http-message-bridge ^0.3.0 -> satisfiable by symfony/psr-http-message-bridge[v0.3] but th
ese conflict with your requirements or minimum-stability.
Installation failed, reverting ./composer.json to its original content.
中文翻译:【更新的依赖(包括需要开发)
无法解码的回应:zlib_decode():数据错误
重试与降级模式,检查HTTPS:/ / getcomposer。org /文件/物品/故障排除。MD #降级模式的更多信息
你的要求不可能解决,对包的安装设置。
问题1
-请求的包laravel /护照(锁定在V1.0.0,需通过laravel 1.0.8)/护照[ V1.0.0 ]但这些配置可满足
冲突与您的要求或最小稳定。
问题2
安装要求laravel /护照1.0.8 ->满足由laravel /护照[┊]。
- laravel /护照/ PSR symfony┊需要HTTP消息桥^ 0.3.0┊->满足由symfony / PSR HTTP消息桥[ V0.3 ]但
这些冲突与您的要求或最小稳定。
安装失败,回复到原来的内容。/ composer.json。】
解决方法:[]中括号中为可选项
修改 项目Composer.json文件 + 删除Composer.lock +[执行composer clearcache] + [执行composer update] +执行:composer require predis/predis

这个错误,我调试了很久,网上没找到解决方法,所以花了很多时间才解决,具体是什么原因,我也不能乱说。
总结一下错误原因:
- 使用redis才会报错,如果你项目中没用用系统提供的redis方法,就不会遇到。
- 版本问题,只要laravel 5.3.*才有这个问题,因为以前版本都可以直接执行composer require predis/predis 解决。
- predis 官网维护没有及时更新 导致新版laravel 出现 请求的包laravel /passport (锁定在V1.0.0,需通过laravel 1.0.8)/passport [ V1.0.0 ]
- 还么想到,希望大家知道的补充,,,,,
先这样吧,希望能帮到遇到同样问题的同道。
原创博客,转载请注明出处!!!谢谢
====MING
关于laravel 5.3 使用redis缓存出现 找不到Class 'Predis\Client' not found的问题的更多相关文章
- Laravel之路——file缓存修改为redis缓存
1.Session: 修改.evn文件: SESSION_DRIVER:redis (如果还不行的话,修改config/session.php的driver) 2.缓存修改为redis 注意:使用 L ...
- laravel框架总结(十三) -- redis使用
一切的前提都是已经安装好了redis服务器,并且能启动(我只总结了mac的安装方法:传送门) 我自己使用的是mac系统,有个教程可以参考下,传送门: 1.安装PHP PRedis 1>PRedi ...
- Laravel 5.1中 Redis 的安装配置及基本使用教程
关于Redis的介绍我们在之前Laravel 缓存配置一节中已有提及,Redis是一个开源的.基于内存的数据结构存储器,可以被用作数据库.缓存和消息代理.相较Memcached而言,支持更加丰富的数据 ...
- laravel中如何使用Redis(Redis是什么)
laravel中如何使用Redis(Redis是什么) 一.总结 一句话总结: 基于内存亦可持久化键值数据库 Redis是完全开源免费的,遵守BSD协议,是一个高性能的键值数据库.是当前最热门的的的N ...
- 缓存工厂之Redis缓存
这几天没有按照计划分享技术博文,主要是去医院了,这里一想到在医院经历的种种,我真的有话要说:医院里的医务人员曾经被吹捧为美丽+和蔼+可亲的天使,在经受5天左右相互接触后不得不让感慨:遇见的有些人员在挂 ...
- Windows下Redis缓存服务器的使用 .NET StackExchange.Redis Redis Desktop Manager
Redis缓存服务器是一款key/value数据库,读110000次/s,写81000次/s,因为是内存操作所以速度飞快,常见用法是存用户token.短信验证码等 官网显示Redis本身并没有Wind ...
- 总结:如何使用redis缓存加索引处理数据库百万级并发
前言:事先说明:在实际应用中这种做法设计需要各位读者自己设计,本文只提供一种思想.准备工作:安装后本地数redis服务器,使用mysql数据库,事先插入1000万条数据,可以参考我之前的文章插入数据, ...
- .NET基于Redis缓存实现单点登录SSO的解决方案[转]
一.基本概念 最近公司的多个业务系统要统一整合使用同一个登录,这就是我们耳熟能详的单点登录,现在就NET基于Redis缓存实现单点登录做一个简单的分享. 单点登录(Single Sign On),简称 ...
- Redis缓存连接池管理
import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.util.Assert;import ...
随机推荐
- 【原】iOS学习之tableView的常见BUG
1.TableView头视图不随视图移动,头视图出现错位 错误原因:tableView的 UITableViewStyle 没有明确的声明 解决方法:在tableView声明的时候明确为 UITabl ...
- 总结30个CSS3选择器(转载)
或许大家平时总是在用的选择器都是:#id .class 以及标签选择器.可是这些还远远不够,为了在开发中更加得心应手,本文总结了30个CSS3选择器,希望对大家有所帮助. 1 *:通用选择器 * ...
- git回滚错误提交
git log //找到你要回滚的那次提交 比如:43596f6b1f57157e627c25ae7a843f60157ac52d git reset --hard HEAD~43596f6b1f57 ...
- 汉字正则表达式[\u4E00-\u9FFF]原因
转载易天:正则表达式的汉字匹配 这里是几个主要非英文语系字符范围 2E80-33FFh:中日韩符号区.收容康熙字典部首.中日韩辅助部首.注音符号.日本假名.韩文音符,中日韩的符号.标点.带圈或带括符文 ...
- 安装WAMP 及 修改MYSQL用户名 、 密码
1,下载并安装WAMP 2,启动服务后,找到MYSQL--MYSQL console--弹出命令窗口(刚开始没有初始用户名跟密码,可直接回车执行) 3,首先输入 use mysq;l---然后修改用户 ...
- mysql 表表连接的问题。
select * from table a, table b where a.aid = b.bid and aid >100 这样连接,如果a有数据,b没有数据, a.aid = b.bid ...
- nodejs学习之events的使用
实用events做个小例子: var mysql = require("mysql"); var Event = require("events").Event ...
- 公司培训 oracle( 第一天)
以前在学校学习Oracle的时候就对rowid 和rownum 这两个伪列有很大的疑惑,今天公司对16届新员工进行公司内部技术培训,课堂上的讲解,又让我想起来了曾经的疑惑点, 我想不能在让这个疑惑继续 ...
- phpexcel读取excel的xls xlsx csv格式
我之前写过一篇PHP读取csv文件的内容 上代码index.php <?php /** * * @author XC * */ class Excel { public $currentShee ...
- TestNG Assert 详解
org.testng.Assert 用来校验接口测试的结果,那么它提供哪些方法呢? 中心为Assert测试类,一级节点为方法例如assertEquals,二级结点为参数类型及参数个数,double 3 ...