Nginx手动编译、安装超详细教程

 更新时间:2023年09月28日 09:45:36   作者:秃了也弱了。  
Nginx安装除了编译以外,我们还可以直接用操作系统上自带的工具比如说yum、apt-get直接安装,这篇文章主要介绍了Nginx手动编译、安装超超详解,需要的朋友可以参考下

一、为什么要手动编译Nginx

Nginx安装除了编译以外,我们还可以直接用操作系统上自带的工具比如说yum、apt-get直接安装。

但是直接安装Nginx二进制文件有一个问题:Nginx二进制文件会把模块直接编译进来,Nginx官方模块并不是每一个都会默认开启,如果想要添加第三方Nginx模块,必须通过编译Nginx才能把第三方强大生态圈中的功能添加到Nginx中。

二、下载Nginx

1、官网

http://nginx.org/

找到右下角的download:

我们复制链接地址,到linux服务器中。

2、下载至linux服务器

# 下载
wget http://nginx.org/download/nginx-1.24.0.tar.gz
# 解压
tar -zxvf nginx-1.24.0.tar.gz
# 进入到源码目录
cd nginx-1.24.0/

3、源码目录分析

  • auto目录:主要包含用于编译的核心功能、lib库以及辅助config配置文件的核心功能。
  • CHANGES文件:包含nginx每一个版本中提供的特性及bug-fix。
  • CHANGES.ru文件:俄罗斯版本的change文件。
  • conf目录:该目录中包含示例配置文件。
  • configure脚本:该脚本用于生成中间文件,执行编译前的一个必备动作。
  • contrib目录:提供vim工具,使用vim可以高亮显示conf配置文件(需要手动拷贝:cp -r contrib/vim/* ~/.vim)
  • html目录:提供了两个html文件,一个是首页一个是50x错误。
  • man目录:帮助文件。
  • src目录:源代码。

4、编译安装

# 查看configure 支持的参数,其中包含指定某些路径、开启某些模块、编译中特殊参数
#./configure --help | more
# 安装nginx必备依赖库
yum -y install gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
# 进行编译,指定安装目录,没什么报错就是编译成功
./configure --prefix=/nginx

configure命令执行完之后,会生成一些中间文件,存放在objs目录下:

其中,ngx_modules.c文件中,决定了我们在执行编译时,哪些模块会编译进nginx。

# 在nginx根目录进行编译(configure所在的目录)
make

此时又生成了大量的中间文件,以及执行的nginx二进制文件(在objs目录下):

# 安装(configure所在的目录)
make install

5、安装目录

  • conf目录包含配置文件
  • sbin目录包含二进制可执行文件
  • logs目录包含日志文件
  • html包含html文件

三、启动

1、启动

# 进入到sbin目录
cd /nginx/sbin
# 启动
./nginx

2、访问一下80端口

打开默认的index页面!

到此这篇关于Nginx手动编译、安装超超详解的文章就介绍到这了,更多相关Nginx编译安装内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • nginx部署多个前端项目详细步骤

    nginx部署多个前端项目详细步骤

    最近一台服务器要配置多个前端项目,当然前后端分离就需要nginx来配置了,下面这篇文章主要给大家介绍了关于nginx部署多个前端项目的详细步骤,需要的朋友可以参考下
    2023-10-10
  • Nginx工作模式及代理配置的使用细节

    Nginx工作模式及代理配置的使用细节

    这篇文章主要为大家介绍了Nginx工作模式及代理配置的使用细节,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • 在ubuntu下为nginx配置支持cgi脚本的方案

    在ubuntu下为nginx配置支持cgi脚本的方案

    本文的需求:让nginx能够解析.cgi后缀的文件,相信会特意看这篇文章的人对CGI是什么及其作用已经有了足够的了解,所以在这里不再赘述,直接开始配置。
    2017-02-02
  • Nginx 启动、停止、重启、升级操作命令收集

    Nginx 启动、停止、重启、升级操作命令收集

    也许你不知道什么是Nginx,Nginx是一个WEB服务器,如IIS那样,现在好多门户都在使用了Nginx作为WEB服务器了,Nginx在Linux系统下跑很优秀,强过其它的WEB服务端,还可以做负载均衡,很不错吧。
    2010-10-10
  • nginx从编译安装到配置文件说明中文详细介绍

    nginx从编译安装到配置文件说明中文详细介绍

    Nginx配置文件主要分成四部分:main(全局设置)、server(主机设置)、upstream(上游服务器设置,主要为反向代理、负载均衡相关配置)和 location(URL匹配特定位置后的设置)
    2018-10-10
  • Nginx反向代理location和proxy_pass配置规则详细总结

    Nginx反向代理location和proxy_pass配置规则详细总结

    nginx代理访问很好用,但是好多人不清楚location和proxy_pass组合在一起使用时访问的url被代理的url真实地址是什么,下面这篇文章主要给大家介绍了关于Nginx反向代理location和proxy_pass配置规则的相关资料,需要的朋友可以参考下
    2022-09-09
  • Nginx服务器中关于SSL的安全配置详解

    Nginx服务器中关于SSL的安全配置详解

    这篇文章主要介绍了Nginx服务器中关于SSL的安全配置详解,2014年曝出的SSL安全漏洞无疑为整个业界带来了巨大震动,本文便对此给出相关安全维护方法,需要的朋友可以参考下
    2015-06-06
  • Nginx中指令server_name的详细使用指南

    Nginx中指令server_name的详细使用指南

    对于Web开发者来说,Nginx是一个强大且灵活的Web服务器和反向代理服务器,下面这篇文章主要介绍了Nginx中指令server_name详细使用的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-07-07
  • Nginx 配置跨域的实现及常见问题解决

    Nginx 配置跨域的实现及常见问题解决

    本文主要介绍了Nginx 配置跨域的实现及常见问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-06-06
  • nginx日志切割定时任务的实现

    nginx日志切割定时任务的实现

    Nginx日志切割能有效管理日志,便于查询、控制存储空间、提高处理效率、方便备份与归档,减少数据丢失风险,实现方法包括重命名日志文件、编写定时日志脚本和设置crontab定时任务
    2024-11-11

最新评论