Ubuntu 16.04 从源码编译安装Nginx

Nginx的模块管理和Apache大不一样,Apache的模块管理相对更灵活,可以像插件一样任意添加。而要为Nginx添加模块,我们需要把模块源码和Nginx源码编译到一起。这样做的一个好处是性能高。

下面记录从源码编译安装最新版Nginx的步骤,并添加一个模块(https://github.com/wandenberg/nginx-push-stream-module)。

#1 添加Nginx development源

编辑 /etc/apt/sources.list.d/nginx-ubuntu-development-xenial.list 文件,取消掉如下一行的注释:

#2 安装构建Nginx的工具和依赖

#3 下载源码

输出:

注意上面最后一行有一个警告,这是apt的一个bug,直接无视。

Ubuntu 16.04 从源码编译安装Nginx

nginx-*目录存放的就是Nginx源码。

#4 下载模块

模块的存放目录:debian/modules

Clone模块源码:

编辑/opt/nginx-*/debian/rules,找到full_configure_flags,在末尾添加新模块:

#5 构建deb包

使用deb的好处:Nginx启动脚本位于/etc/init.d/nginx,配置文件目录位于/etc/nginx/,日志目录位于/var/log/nginx/,可执行文件位于/usr/sbin/nginx。

你也可以使用./configure->make->make install,但是这就不能使用rules中的规则了,只能手动设置flag。

#6 安装Nginx

Ubuntu 16.04 从源码编译安装Nginx

#7 测试:

Ubuntu 16.04 从源码编译安装Nginx

Ubuntu 16.04 从源码编译安装Nginx

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注