homestead 安装 php 扩展,Homestead安装php Redis扩展的步骤及遇到的问题解决

news/2024/12/22 19:24:41/

本篇文章给大家带来的内容是关于Homestead安装php Redis扩展的步骤及遇到的问题解决,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

最近在使用 vagrant 安装 homestead 后,运行代码时提示 Redis 对应的 Class 不存在,其实是缺少对应的 PHP Redis 扩展,在安装的过程中遇到不少坑,记录到这篇文章里了

首先通过 vagrant ssh 进入 homestead

下载 & 编译 PHP Redis 扩展git clone https://github.com/phpredis/phpredis.git

cd phpredis

/usr/bin/phpize5.6 (不同php版本的情况phpize版本不同)

./configure --with-php-config=/usr/bin/php-config5.6 (这里边也需要根据情况指定 php-config 的版本,且和 phpize 的版本保持一致。)

make && make install

. {note} 编译完成后,redis的php扩展在module目录中,它的文件名是redis.so*

查看 PHP 的 extension_dir, 方式有多种:

1、一种是安装完成时会有提示扩展的安装目录,如下图

e17aff3a857f0494db5649a0979eec9a.png

2、使用命令 php -i|grep extension_dir

把 redis.so 扩展模块移入 PHP 扩展目录中

sudo mv ./modules/redis.so /usr/lib/php/2013122

添加 PHP 配置文件的 ini 文件

创建一个文件

sudo touch /etc/php/5.6/fpm/conf.d/20-redis.ini

使用vi编辑器写入如下内容:

extension=redis.s

万事大吉,重启 php-fpm

sudo service php5.6-fpm restart再次在网页中使用phpinfo()时就会发现,redis 扩展出现了,new Redis()可用了。

说下主要遇到的坑

就是执行 phpize 相关命令时,提示未找到,homestead 中有 php5.6、php7.0、php7.1、php7.2,基于我使用了

php5.6 才会出现此情况,需要安装 php-dev, 使用 sudo apt install php-dev 的时候提示找不到对应的包,执行 apt search php-dev 也找不到,得通过 apt search php5.6-dev 就能获取到对应的包地址(自己是偶然执行 apt search php5 然后才知道对应的包名为 php5.6-dev 的),知道了包名后就是直接使用 sudo apt install 安装对应的包了


http://www.ppmy.cn/news/345441.html

相关文章

vue 使用JSON 编辑器: vue-json-editor

这里写目录标题 1、安装插件2、引入插件并注册3、使用示例4、实现效果 1、安装插件 npm install vue-json-editor --save 2、引入插件并注册 import vueJsonEditor from vue-json-editor export default {components: { vueJsonEditor }, }3、使用示例 <template><…

双色球全部开奖数据(json版)15年(2003~2015)开奖结果

{date:2015-12-17,issue:2015148,numbers:09 13 14 22 26 27 07,saleAmt:330278892,firstAward:18 (沪 苏 浙 皖..),secondAward:298}, {date:2015-12-15,issue:2015147,numbers:08 09 16 23 24 30 05,saleAmt:331495570,firstAward:29 (辽 苏 闽 鲁..),secondAward:181}, {dat…

Java实现读取txt文件数据并导入数据库

目录 建表语句java文件&#xff08;SsDao.java&#xff09;txt文件&#xff08;双色球.txt&#xff09; 建表语句 create table lottery(id int primary key auto_increment,opendate varchar(16),num varchar(10),redone varchar(2),redtwo varchar(2),redthree varchar(2),r…

php扩展模块如何安装

查看php加载了哪些模块&#xff1a;[rootmaster ~]# /usr/local/php/bin/php -m 这些模块会包含一些静态的的也会包含一些动态的&#xff0c;有时候我们会有一些需求&#xff0c;这些模块在我们刚刚编译完php之后&#xff0c;发现少了一个模块&#xff0c;没有编译进来&#xf…

CCF认证2013122-ISBN号码

本人初学&#xff0c;水平有限&#xff0c;若有不足&#xff0c;恳请赐教&#xff01; 具体代码如下&#xff1a; #include <iostream> #include <string> #include <regex>using namespace std;int main() {//FILE *stream;//freopen_s(&stream, "…

ccf2013122

问题描述   每一本正式出版的图书都有一个ISBN号码与之对应&#xff0c;ISBN码包括9位数字、1位识别码和3位分隔符&#xff0c;其规定格式如“x-xxx-xxxxx-x”&#xff0c;其中符号“-”是分隔符&#xff08;键盘上的减号&#xff09;&#xff0c;最后一位是识别码&#xff…

【MySQL】MySQL 5.7 新特性整理

MySQL 5.7 新特性有很多&#xff0c;有以下这些 一、InnoDB变更 默认存储引擎改为InnoDB:MySQL 5.7将默认存储引擎改为InnoDB,以推动其成为事实标准。这意味着任何未指定存储引擎的表都将使用InnoDB。 CREATE TABLE t1 (id INT); -- 使用InnoDB多页表空间:新引入多页表空间,用…

交换机上云MACC方式

步骤1、尝试ping通114.114.114.114 步骤2、尝试ping cloud.ruije.com.cn 若不通&#xff0c;配置dns&#xff1a;ip name-server 223.5.5.5 步骤3、设备开启cwmp功能 Ruijie#conf t Ruijie(config)#cwmp Ruijie(config-cwmp)#acs url http://118.190.126.198/service/tr069s…