Nginx学习笔记(三)Linux环境下Nginx的安装和部署
创始人
2025-05-30 03:07:45

目录

    • 一、官网下载
    • 二、配置基本信息
      • 1.上传 Linux
      • 2.解压
      • 3.安装编译环境
      • 4.执行命令
        • 4.1 配置失败原因(1):没有安装C++编译环境
        • 4.2 配置失败原因(2):没有安装 PCRE 依赖
        • 4.3 配置失败原因(3):没有安装 zlib 依赖
      • 5.查看文件列表
    • 三、编译安装
    • 四、配置全局命令
      • 1.查看目前的 `PATH` 全局变量:
      • 2.追加 `sbin` 路径到 `PATH` 全局变量:
      • 3.再次查看 `PATH` 全局变量:
      • 4.执行 `nginx -v` 命令

一、官网下载

Nginx官网地址: http://nginx.org/

1.在官网点击 download 进入下载页:http://nginx.org/en/download.html

在这里插入图片描述

2.Nginx 的下载页主要有以下三类版本:

  • Mainline version: 这是 Nginx 的主线版本,也是最新的版本。它包含了最新的功能和 bug 修复,但也可能包含一些未经充分测试的新功能,因此不太适合生产环境使用

    主线版本在更新频率和特性方面比稳定版更加活跃。

  • Stable version: 这是 Nginx 的稳定版本,适合用于生产环境。这个版本会经过更长时间的测试和验证,并且只包含已经经过充分测试的新功能和 bug 修复。

    稳定版更新频率较低,但是更加可靠。

  • Legacy versions: 这是 Nginx 的旧版本,它们已经不再受到支持,也不推荐使用。这些版本可能包含已知的安全漏洞和 bug,不适合用于生产环境。如果您需要使用旧版本,应该尽快升级到最新的稳定版。

这里我们选择 Stable version(稳定版)中的 nginx-1.22.1(Linux版本)进行下载。

在这里插入图片描述

3.下载后文件如下图所示:

在这里插入图片描述

二、配置基本信息

1.上传 Linux

这里我们上传到 /usr/local/src 路径下:

在这里插入图片描述

2.解压

执行解压命令:

tar -zxvf nginx-1.22.1.tar.gz

解压后目录如下图所示:

在这里插入图片描述

3.安装编译环境

执行命令前,需要提前安装以下依赖:

(不然会出现 4.14.24.3 中配置失败的情况)

yum install -y gcc gcc-c++ autoconf automake make openssl openssl-devel zlib-devel

4.执行命令

执行如下命令,配置基本信息:

(这里需要根据实际的nginx版本填写安装路径)

#配置configure --prefix 代表安装的路径,--with-http_ssl_module 安装ssl,--with-http_stub_status_module查看nginx的客户端状态
./configure --prefix=/usr/local/nginx-1.22.1 --with-http_ssl_module --with-http_stub_status_module

配置成功信息如下所示:

在这里插入图片描述

4.1 配置失败原因(1):没有安装C++编译环境

报错提示:./configure: error: C compiler cc is not found

在这里插入图片描述

需要执行如下命令:

yum install -y gcc gcc-c++ autoconf automake make

4.2 配置失败原因(2):没有安装 PCRE 依赖

报错提示:./configure: error: the HTTP rewrite module requires the PCRE library.

在这里插入图片描述

需要执行如下命令:

yum install -y openssl openssl-devel

4.3 配置失败原因(3):没有安装 zlib 依赖

报错提示:./configure: error: the HTTP gzip module requires the zlib library.

在这里插入图片描述

需要执行如下命令:

yum install -y zlib-devel

5.查看文件列表

查看文件列表,可以发现多了 Makefileobjs

在这里插入图片描述

三、编译安装

配置好基本信息后,在 Makefile 的同级目录下,执行如下命令编译并安装:

make && make install

安装后,在基本信息中配置好的安装路径内容如下:

在这里插入图片描述

四、配置全局命令

1.查看目前的 PATH 全局变量:

echo $PATH

执行结果:

在这里插入图片描述

2.追加 sbin 路径到 PATH 全局变量:

export PATH=$PATH:/usr/local/nginx-1.22.1/sbin

执行结果:

在这里插入图片描述

3.再次查看 PATH 全局变量:

echo $PATH

执行结果:路径追加成功。

在这里插入图片描述

4.执行 nginx -v 命令

nginx -v

执行结果:即使不在 sbin 目录下也可以正常执行。

在这里插入图片描述

整理完毕,完结撒花~ 🌻





参考地址:

1.Linux安装Nginx(超详细步骤),https://blog.csdn.net/qq_45752401/article/details/122660965

2.Nginx编译安装错误error: the HTTP gzip module requires the zlib library,https://blog.csdn.net/a11101171/article/details/41622843

相关内容

热门资讯

普通插槽、具名插槽、作用域插槽 插槽 插槽就是子组件提供给父组件的占位符,用slot来表示,父组件可以在...
Go语言必知必会100问题-0... 减少代码的嵌套层数 软件开发中的“心智模型”用于描述开发人员在编码时心理活动,每段代码...
CSRF漏洞的概念、利用方式、... CSRF漏洞1.CSRF的概念1.1 什么是CSRF?1.2 基本攻击流程2.CSRF...
基于springboot开发的... 基于springboot开发的学生考勤管理系统 如需更多资料请前往文章底部获取联系方式 系统设计主要...
cocosCreator 之 ... cocosCreator版本: 3.7 简介 cocosCreator的工作流程是通...
vue2中$set的原理_它对... $set的作用背景动态添加属性,不使用$set动态添加属性,使用$set...
3/19考后总结 时间安排 8:30–8:50 读题,T1 感觉是乱搞题,T2 貌似可以二...
【JavaWeb】JDBC 目录 一、JDBC概述 1 JDBC概念 2 JDBC本质 3 JDBC好处 二,J...
python 多任务 一些概念 1.多任务 简单地说,就是同时可以运行多个任务。打个比方,你一...
基于springboot框架实... 基于springboot框架实现自习室预订系统的设计与实现 开发语言:Java 框架...
VMware Centos7 ... 接着开始在VMware中搭建我们的大前端环境。这里我已经在我本机安装好VMware虚拟机了。 Win...
JUC高级二: Java锁(上... JUC高级二: Java锁(上篇) 1. 乐观锁和悲观锁 synchronized关键字和Lock...
Go分布式爬虫笔记(八) 08_项目需求分析与架构设计 需求分析 业务需求 爬虫引擎为基础的推送系统 提供 快速的热点事...
【计量经济学】第一次作业(7、... 第二次 7.假设有人做了如下的回归: y i = β 0 ^ + β 1 ^ x i + e i ...
Java Iterator(迭... 简介 在Java中,如果我们需要遍历一个集合(Collection&#x...
作物杂交/记忆化搜索/记忆化数... 题解:本题用到了记忆化搜索:记忆化搜索,本质还是 动态规划...
Linux下是实现的 HTTP... 项目功能:(1)能接收客户端的GET请求;&...
运营数据分析模型—标签体系 标签体系 标签体系上是描述对象的一种机制,而标签作为标签体系的基本组成元素,用来描述对象具有某种属性...
在openSUSE-Leap-... 在openSUSE-Leap-15.4-DVD-x86_64中使用百度网盘AppImage 打开百度...
鸟哥的Linux私房菜 She... 第十二章、学习 Shell Scripts https://linux.vbird.org/linu...
2分钟快速了解!全网最详细的性...  目录:导读 Redis 简介 Redis 优势 Redis与其他key-value存...
设计模式-02 4,创建型模式 4.2 工厂模式 4.2.1 概述 需求:设计一个咖啡店...
纠错码中的汉明码,NAND F...      纠错码是一种用在不可靠的或者噪音比较大的通信信道中用来控制数据传输错误的技术。这种技术的核...
【Java】P14 面向对象(... 类的封装性封装性高内聚与低耦合何为封装性如何封装get 与 set 方法案例 封装性 高内聚与低耦...
【FPGA】Xilinx Co... 功能描述 1、Rotate Rotate 实现的功能是坐标的旋转。 输入 X, Y, Phase 输...
【Pytorch】使用Pyto... 文章目录1. 题目描述2. 代码实现验证写在最后 1. 题目描述 在这个例子中网络结构如下所示&#...
client-go disco... 1. 概述 discovery包主要用来发现服务器支持的API组、版本和资源的方法,及...
[LeetCode周赛复盘] ... [LeetCode周赛复盘] 第 100 场双周赛20230318 一、本周周赛总结二、 [Easy...
Matlab基础教学入门 Matlab是一种非常强大的数学计算工具,广泛应用于科学和工程领域。本篇文章将介绍一些...
设计模式-02 4,创建型模式 4.2 工厂模式 4.2.1 概述 需求:设计一个咖啡店...