首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

CentOS7 在已安装好的Nginx 增加nginx-push-stream-module

CentOS7 在已安装好的Nginx

增加nginx-push-stream-module

目前有很多第三方SDK可以实现服务器向app推送消息,大多都是用来推送新闻,推送推荐。今天想尝试一下使用websocket来实现在线聊天,由于我服务器配置的环境是nginx1.12.2+mysql5.7+tomcat9.0,所以需要配置为已安装的nginx增加nginx-push-stream-module推送流模块。

参考:

如何在已经安装好的Nginx上增加新模块 https://www.liminghulian.com/article/58

170217、nginx 安装时候报错:make: *** No rule to make target `build', needed by `default'. Stop.

https://www.cnblogs.com/zrbfree/p/6419043.html

make: *** No rule to make target `build', needed by `default'. Stop.

http://blog.csdn.net/csdnhadoop/article/details/51112430

1

关于nginx-push-stream-module

nginx的Push Stream Module是使用http技术来实现连接管道,在项目里主要用于即时消息的推送。Push Stream Module主要采用pub/sub模式来管理长连接,用户可以申请连接通道,通道建立订阅该通道,消息推送者可以向连接通道发送消息,这样订阅该通道的所有用户都可以接收到该消息。利用 nginx-push-stream-module 可以实现基于AJAX的长轮询(long-polling)方式的服务器消息推送。

2

在已安装的nginx上

增加nginx-push-stream-module

第二步:使用git,直接克隆模块源码,如果未安装git可使用yum -y install git来安装git。模块源码地址:http://github.com/wandenberg/nginx-push-stream-module.git

git克隆指令:git clone http://github.com/wandenberg/nginx-push-stream-module.git

使用pwd指令可查看当前nginx-push-stream-module模块所在目录,将欲增加的nginx-push-stream-module模块路径定义为一个变量(此步骤非必要步骤,且定义的变量只能当前会话可用,只是为了后续操作方便)

NGINX_PUSH_STREAM_MODULE_PATH=$PWD/nginx-push-stream-module

第三步:使用nginx -V查看当前已安装的nginx的配置参数并拷贝出来,【解压相同版本的nginx源码包(以前安装时的源码包),如果已经删除了课重新下载,版本相同即可(参考第一步)】

进入nginx的目录 cd nginx-1.12.2 进行配置

./configure --add-module=$NGINX_PUSH_STREAM_MODULE_PATH ***(其中***是前面记录的nginx原始的配置,这个务必加上)

编译 :make

不要执行make install避免覆盖,备份原来的nginx可执行文件

第四部:将编译好的nginx替换原来安装的nginx(可执行文件)

备份原来的nginx:mv /sbin/nginx /sbin/nginx_bak

将编译好的nginx复制到原始nginx的sbin目录:

cp objs/nginx /sbin/

nginx -V查看一下nginx的模块情况。

nginx -s reload 重新加载一下nginx即可。

3

make过程中遇到的坑

nginx 安装时候报错:make: *** No rule to make target `build', needed by `default'. Stop.

解决方法步骤:

1、安装GCC: yum install gcc

2、安装PCRE: yum install pcre pcre-devel

3、安装zlib: yum install zlib zlib-devel

4、yum install openssl openssl-devel

如果按以上步骤执行完成之后使用make编译nginx还是会报错,那么请检查你./configure的时候是否有错。

135编辑器

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180318G19ZVE00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券