Nginx
编译 Nginx
针对 Unix 环境
下载 Nginx
从 Nginx 官网 出下载想要编译版本的 Nginx,Nginx 官网提供三个版本:
- Mainline version
主线版本,性能较新,稳定性较 Stable version 稍差,倡议学习应用该版本,理论生产应用 Stable version。
- Stable version
稳固版本
- Legacy versions
历史版本
wget http://nginx.org/download/nginx-1.17.4.tar.gz
tar -zxvf nginx-1.17.4.tar.gz
cd nginx-1.17.4
Nginx 源码目录介绍
auto
编译时的依赖库以及针对操作系统个性抉择库
CHANGES
英文版 Nginx 各版本变更阐明
CHANGES.ru
俄文版 Nginx 各版本变更阐明(Nginx 作者是俄罗斯人)
conf
配置文件目录
configure
编译配置,编译前生成两头文件不便编译
次要有编译门路配置、某些性能开关及模块配置
--prefix
设置服务器寄存地址,也是其余未配置门路的目录的默认根目录
--XXX-path
代表设置 XXX 目录的地址
--with-XXX_module
代表启用某些模块
--without-XX_module
代表禁用某些模块,这些模块是 Nginx 默认会编译的模块
还有一些其余参数能够参考能够参考 Ngxin 官网文档
contrib
vim 提醒插件以及一些晋升应用 Nginx 效率的工具脚本
配置 vim 提醒
cp -r contrib/vim ~/.vim
针对不同层次结构以及不同关键字色彩区别会更显著
html
寄存 index.html(Nginx 默认欢送页)和 50x.html(Nginx 默认谬误页)
index.html:
50x.html:
LICENSE
许可证信息
man
Nginx 为 linux 提供的帮助文件
能够应用命令查看(与编译后应用 nginx -h
相比内容更丰盛)
man man/nginx.8
README
自述文件
src
源码
编译
首先须要应用 configure
进行配置,个别只设置 --prefix
即可:
./configure --prefix=/home/sanchan/nginx
配置会输入配置简要阐明:
Configuration summary
+ using system PCRE library
+ OpenSSL library is not used
+ using system zlib library
nginx path prefix: "/home/sanchan/nginx"
nginx binary file: "/home/sanchan/nginx/sbin/nginx"
nginx modules path: "/home/sanchan/nginx/modules"
nginx configuration prefix: "/home/sanchan/nginx/conf"
nginx configuration file: "/home/sanchan/nginx/conf/nginx.conf"
nginx pid file: "/home/sanchan/nginx/logs/nginx.pid"
nginx error log file: "/home/sanchan/nginx/logs/error.log"
nginx http access log file: "/home/sanchan/nginx/logs/access.log"
nginx http client request body temporary files: "client_body_temp"
nginx http proxy temporary files: "proxy_temp"
nginx http fastcgi temporary files: "fastcgi_temp"
nginx http uwsgi temporary files: "uwsgi_temp"
nginx http scgi temporary files: "scgi_temp"
配置生成的两头文件会搁置到 objs 目录下,有趣味的小伙伴能够看下。
而后就能够进行编译了:
make
编译会在 objs 目录下生产 nginx、nginx.8 及 ngx_modules.o,如果是降级 Nginx 能够将这些文件替换旧文件,如果是全新装置则执行:
make install
这样在之前配置的门路 /home/sanchan/nginx
中就能够看到 Nginx 相干文件了。
sbin 为 Nginx 二进制执行文件目录
logs 为 Nginx 日志目录
conf 及 html 与下载的 Nginx 源码中目录是统一的
以上就实现了 Nginx 的编译工作
本文由博客一文多发平台 OpenWrite 公布!