如何在安装后为nginx配置其他模块?

use*_*858 38 nginx

我使用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
Run Code Online (Sandbox Code Playgroud)

Chu*_* Ma 30

与Apache不同,所有模块(包括第三方模块)都将编译为nginx.因此,每次要添加新模块时,都必须重新编译nginx.

所以,是的,您必须根据文档安装它.在同一台服务器上保留2个nginx运行时没有多大价值.所以你可能还想删除以前的nginx.

  • 我用`sudo apt-get install`安装了它,我该怎么办? (3认同)

jek*_*edy 27

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

  • @Leia 当然,但是如果您从存储库中获取 nginx,您也可以从同一存储库中提取可选模块的二进制文件,只要维护存储库的人将它们构建在一起即可。 (2认同)

小智 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
Run Code Online (Sandbox Code Playgroud)

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