前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

Nginx

作者头像
三产
发布2022-05-11 18:24:10
2520
发布2022-05-11 18:24:10
举报
文章被收录于专栏:用户6590312的专栏

Nginx

Nginx
Nginx

编译 Nginx

针对 Unix 环境

下载 Nginx

Nginx 官网 出下载想要编译版本的 Nginx,Nginx 官方提供三个版本:

Mainline version

主线版本,功能较新,稳定性较 Stable version 稍差,建议学习使用该版本,实际生产使用 Stable version。

Stable version

稳定版本

Legacy versions

历史版本

代码语言:javascript
复制
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 源码目录介绍

Nginx 源码目录
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 提示时使用 vim 打开 nnginx.conf
未配置 vim 提示时使用 vim 打开 nnginx.conf

配置 vim 提示

代码语言:javascript
复制
cp -r contrib/vim ~/.vim 
配置 vim 提示后
配置 vim 提示后

针对不同层次结构以及不同关键字颜色区别会更明显

html

存放 index.html(Nginx 默认欢迎页)和 50x.html(Nginx 默认错误页)

index.html:

index.html
index.html

50x.html:

50x.html
50x.html
LICENSE

许可证信息

man

Nginx 为 linux 提供的帮助文件

可以使用命令查看(与编译后使用 nginx -h 相比内容更丰富)

代码语言:javascript
复制
man man/nginx.8
man
man
README

自述文件

src

源码

编译

首先需要使用 configure 进行配置,一般只设置 --prefix 即可:

代码语言:javascript
复制
./configure --prefix=/home/sanchan/nginx

配置会输出配置简要说明:

代码语言:javascript
复制
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目录下,有兴趣的小伙伴可以看下。

然后就可以进行编译了:

代码语言:javascript
复制
make

编译会在 objs 目录下生产 nginx 、nginx.8 及 ngx_modules.o,如果是升级 Nginx 可以将这些文件替换旧文件,如果是全新安装则执行:

代码语言:javascript
复制
make install

这样在之前配置的路径 /home/sanchan/nginx 中就可以看到 Nginx 相关文件了。

安装完成
安装完成

sbin 为 Nginx 二进制执行文件目录

logs 为 Nginx 日志目录

conf 及 html 与下载的 Nginx 源码中目录是一致的

以上就完成了 Nginx 的编译工作

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019-10-17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Nginx
    • 编译 Nginx
      • 下载 Nginx
      • Nginx 源码目录介绍
      • 编译
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档