52

我已经使用 rpm 在我们的 redhat 机器上安装了 Nginx。现在我们要添加 nginx-rtmp 模块,但是为了根据文档添加新模块,我需要通过下载 tar 球来构建它。这是否意味着我必须删除 rpm 并按照文档进行安装。

参考:https ://github.com/arut/nginx-rtmp-module/wiki/Getting-started-with-nginx-rtmp

./configure --add-module=/usr/build/nginx-rtmp-module
make
make install
4

5 回答 5

39

使用 nginx 1.9.11,不需要重新编译服务器,因为它们添加了对动态模块的支持。看看这里: https ://www.nginx.com/blog/dynamic-modules-nginx-1-9-11/

于 2016-06-08T16:12:16.977 回答
38

与 Apache 不同,所有模块,包括 3rd 方模块,都将被编译到 nginx 中。所以每次你想添加一个新模块时,你都必须重新编译nginx。

所以是的,你必须按照文档安装它。以任何方式在同一台服务器上保留 2 个 nginx 运行时都没有多大价值。所以你可能还想删除之前的 nginx。

于 2013-04-17T02:37:00.813 回答
6

我有一个类似的问题,升级后 auth-pam 模块坏了。这是为我解决的问题(debian stretch/sid,nginx 1.10.2):

apt install libnginx-mod-http-auth-pam
ln -s /usr/share/nginx/modules-available/mod-http-auth-pam.conf /etc/nginx/modules-enabled/50-mod-http-auth-pam.conf

配置文件包含一个“load_module”指令,它告诉 nginx 在启动时动态加载模块。正如jekennedy 所提到的,这仅适用于支持动态模块加载的较新版本的 nginx。

于 2016-11-30T20:57:59.953 回答
3

是的,您必须卸载 nginx(通过 rpm 安装)并根据源文件中提到的文档重新安装它。使用源代码安装 nginx 有一些缺点,例如不能将 nginx 用作服务。在这里,您可以找到使用操作系统相关软件包安装 nginx 时获得的所有功能的说明。

于 2016-05-03T12:09:02.603 回答
2

按照 nginx 博客页面“为 NGINX Plus 编译动态模块”的这篇文章中的步骤,我可以编译 RTMP 模块,nginx-rtmp-moduleGithub下载并将其导入我的网络服务器。

问候。

于 2017-03-09T08:06:36.680 回答