linux下php安装php-kafka和php-rdkafka扩展的方法详解
具体步骤:
1、安装librdkafka
cd /usr/local/src #进入安装包存放目录
wget https://github.com/edenhill/librdkafka/archive/master.zip #下载
mv master.zip librdkafka-master.zip #修改包名
unzip librdkafka-master.zip #解压
cd librdkafka-master #进入安装文件夹
./configure #配置
make #编译
make install #安装
2、安装phpkafka
cd /usr/local/src #进入安装包存放目录
wget https://github.com/EVODelavega/phpkafka/archive/master.zip #下载
mv master.zip phpkafka-master.zip #修改包名
unzip phpkafka-master.zip #解压
cd phpkafka-master #进入安装文件夹
/usr/local/php/bin/phpize #加载php扩展模块
./configure --enable-kafka --with-php-config=/usr/local/php/bin/php-config #配置
make #编译
make install #安装
3、修改php配置文件
vi /usr/local/php/etc/php.ini #打开php配置文件,在最后一行添加下面的代码
extension="kafka.so"
:wq! #保存退出
4、测试
以下代码,保存为phpinfo.php
- <?php
- phpinfo();
- ?>
上传到网站目录,查找kafka,如下图所示,说明安装成功!
2. 期间遇到几个坑 前边的步骤都做完后 发现就是扩展没有正常加载上 ,很奇葩 后来看了 php的错误日志 是找不到librdkafka.so.1这个文件,librdkafka安装都是正常的, 百度后 找到了解决方法。
php加载 librdkafka的时候 会在 /usr/lib/下找对应的文件 没有找到回报错,所以加个软链是最简单的方法。
ln -s /usr/local/lib/librdkafka.so.1 /usr/lib/
加了软链后记得一定 更新软链才会生效
ldconfig
然后再重启php-fpm 一切都ok啦 ~~ 。