nginx编译安装手把手教学

编译安装nginx的第一步需要从nginx的官网找到nginx最新的稳定版本
下面这是官方网站的资源下载地址
https://nginx.org/en/download.html

在这里插入图片描述

选中稳定版本点击右键——选择复制链接

在这里插入图片描述

在终端内使用wget指令+官网下载地址,将nginx下载

使用wget指令下载

wget https://nginx.org/download/nginx-1.26.0.tar.gz

在这里插入图片描述

解压nginx下载包

使用tar xf 将下载包解压

tar xf nginx-1.26.0.tar.gz

安装zlib-devel、pcre-devel等Nginx相关依赖包以及gcc编译环境
yum -y install gcc gcc-c++ zlib-devel pcre-devel openssl-devel

在这里插入图片描述
检测编译环境和安装软件

./configure --prefix=/usr/local/nginx --with-debug --with-stream ; echo $?
./configure: 这是一个脚本,用于准备nginx的源代码树以进行编译。它检查系统上是否存在所需的库和工具,并设置构建系统以创建nginx的二进制文件和相关的库文件。
–prefix=/usr/local/nginx: 这个选项指定了nginx安装后的基本目录。安装后的文件(如二进制文件、配置文件、模块等)将位于/usr/local/nginx目录及其子目录中。
–with-debug: 这个选项启用了调试日志记录功能,允许在运行时获取更详细的调试信息。这通常用于开发或调试目的,但在生产环境中可能会降低性能。
–with-http_ssl_module: 这个选项确保在编译时包含HTTP SSL模块,它提供了对HTTPS协议的支持。为了使这个模块工作,你需要安装OpenSSL库及其开发文件(例如,在Debian或Ubuntu上,你可能需要安装libssl-dev包)。
–with-stream启用Nginx的Stream模块。Stream模块让Nginx能够处理第四层协议(如TCP和UDP)的连接,这对于实现TCP代理、TLS终端、邮件代理等功能非常重要。没有这个选项,Nginx默认主要处理HTTP和HTTPS这类应用层协议

开始编译

使用make编译或者make -j cpu数量

make 

在这里插入图片描述

使用下面指令安装之前通过 ./configure 配置好的软件
make install
查看nginx的安装目录

在这里插入图片描述

检测配置文件语法
/usr/local/nginx/sbin/nginx -t

在这里插入图片描述

启动Nginx服务
/usr/local/nginx/sbin/nginx
查看nginx进程
ss -tulanp |grep nginx
ps aux |grep nginx

在这里插入图片描述

OK,到目前为止编译安装已完成咱们来总结一下

先找到官网复制下下载包的网址,在服务器内进行下载

使用指令检测编译环境和安装一些需要的模块

./configure --prefix=/usr/local/nginx --with-debug --with-stream ; echo $?

检测完后使用make指令开始编译

使用make install将刚刚./configure配置好的软件

完成后启动查看即可

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/18088.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

代码模板,Cookie和Session

目录 代码模板 Cookie的基本使用 概念 Cookie的API public Cookie(String name, String value) 发送Cookie对象到客户端:使用response对象 创建Cookie对象并响应给浏览器 在服务器后端获取Cookie对象 Cookie[]cookiesrequset.getCookies(); Cookie的使用细…

微服务架构中Java的应用

在微服务架构中,Java是一种非常常用的编程语言。Java生态系统非常庞大,有许多框架和工具可以用来构建和管理微服务。 以下是一些在微服务架构中使用Java编写的应用程序的示例: Spring Boot和Spring Cloud:Spring Boot是一种用于快…

【InternLM实战营第二期笔记】03:“茴香豆“,搭建你的 RAG 智能助理(未完成)

文章目录 笔记-RAG课程结构为什么要用 RAG?定义工作原理向量数据库RAG 工作流程发展历程常见优化RAG vs 微调LLM 优化方法比较RAG的评价总结 笔记-茴香豆什么是茴香豆茴香豆实战 笔记-RAG 课程结构 为什么要用 RAG? 新增知识,尤其是高频变动…

基于51单片机简易温度计

一.硬件方案 本系统利用51单片机控制温度传感器DS18B20进行温度的实时检测并显示,能够实现快速测量环境温度。硬件以微控制器为核心,外接时钟电路、复位电路、温度测量电路、LED显示电路组成。 二.设计功能 (1)采用DS18B20温度…

Node.js和npm常用命令

一、Node.js简介 Node.js是一个免费、开源、跨平台的JavaScript运行时环境,允许开发人员创建服务器、web应用程序、命令行工具和脚本。 点击查看node.js中文官网 点击查看node.js英文官网 二、npm简介 npm(Node Package Manager)是Node.js的软件包管理器&#xff0…

使用Python编写的SIRD模型示例

代码是一个使用Python编写的SIRD模型示例,模拟传染病在人群中的传播。SIRD模型是一个经典的流行病学模型,它将人群分为四个部分:易感者(S)、感染者(I)、康复者(R)和死亡者(D)。 2. **定义SIRD模型的微分方程**: - `sird_model` 函数定义了SIRD模型的基本方程。它接受当前…

ssm150旅游网站的设计与实现+jsp

旅游网站设计与实现 摘 要 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本旅游网站就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞…

如何在Java中实现函数式编程?

在Java中实现函数式编程的关键是使用Lambda表达式和函数式接口。下面是一个简单的示例,展示了如何使用Lambda表达式和函数式接口来实现函数式编程。 首先,定义一个函数式接口,可以通过使用FunctionalInterface注解来标记该接口为函数式接口。…

解析txt文件,并以字段名为key,解析后数据为value,动态参数入库

工具方法 default ArrayList<HashMap<String,String>> txt2MapList(String[] fieldNames,File file){ArrayList<HashMap<String,String>> entityMaps new ArrayList<>();try{BufferedReader br new BufferedReader(new FileReader(file));//…

工作纪实50-Idea下载项目乱码

下载了公司的一份项目代码&#xff0c;发现是gbk格式的&#xff0c;但是我的日常习惯又是utf-8&#xff0c;下载项目以后全是乱码&#xff0c;一脸懵 借用网友的一张图&#xff0c;如果是一个一个文件这么搞&#xff0c;真的是费劲&#xff0c;好几百个文件&#xff01; 步骤…

NSS‘题目练习3

[SWPUCTF 2021 新生赛]easyupload3.0 打开题目发现要求上传.jpg文件 先上传抓包&#xff0c;尝试更改后缀 换一种形式 文件头绕过 都试过之后尝试上传.htaccess文件&#xff0c;发现上传成功 会将之后上传的文件后缀自动更名为.php 再上传.jpg文件 蚁剑连接找到flag [SWPUCTF …

保障餐饮场所安全:可燃气体报警器专业检测的必要性

在餐饮行业&#xff0c;火灾隐患一直是备受关注的问题。为了有效预防和及时发现可燃气体泄漏&#xff0c;可燃气体报警器的专业检测周期显得尤为重要。 今天&#xff0c;佰德和大家一起来深入了解一下可燃气体报警器的专业检测周期&#xff0c;若您对此有不同的观点或其他的问…

K8S集群监控方案之Prometheus+kube-state-metrics+Grafana

序言 | Prometheus 中文文档 方案简单架构图 一、部署kube-state-metrics 1、部署文件下载 地址 kube-state-metrics/examples/standard at main kubernetes/kube-state-metrics GitHub 2、修改下载的文件 2.1、修改镜像 原镜像可能下载不了&#xff0c;这里修改deploy…

苹果与OpenAI合作在即:iOS 18中的ChatGPT引发期待与担忧

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

互联网应用主流框架整合之数据库事务管理

在互联网系统中同时运行着成千上百个线程是十分常见的事情&#xff0c;尤其当一个热门出现时&#xff0c;用户几乎同时打开手机、电脑、平板灯设备进行访问&#xff0c;这样就会导致数据库处在一个多事务访问的环境中&#xff0c;从而引发数据丢失或者数据不一致的现象&#xf…

计算机考研|408开始的晚,如何规划复习?

408开始的比较晚不用怕 只需要6个月的复习时间&#xff0c;按照我的复习计划&#xff0c;你至少可以考100这个分数 我的计划是对于基础差的考生的&#xff0c;大佬们就可以绕道了&#xff0c;对于基础差的考生来说&#xff0c;408复习的难点其实在于学好数据结构和计算机组成…

python对一组数据进行描述性统计

描述性统计 描述性统计是一种统计学方法&#xff0c;用于总结和描述数据的主要特征。它可以帮助我们了解数据的中心位置、分散程度和形状等信息。以下是一些常用的描述性统计量&#xff1a; 中心趋势的度量&#xff1a; 1、均值&#xff08;Mean&#xff09;&#xff1a;所有…

rk3568_semaphore

文章目录 前言1 什么是信号量1.1 信号量API函数2、信号量实验2.1 实验目的2.2函数源码2.3 运行结果图前言 本文记录rk3568开发板的信号量实验 1 什么是信号量 信号量是同步的一种方式,常常用于控制对共享资源的访问。 举个例子:停车场的停车位有100个,这100个停车位就是共…

C语言:创建简单的流媒体服务器来播放.flv文件

编写 httpFlv_server.cpp 如下 #include <iostream> #include <stdint.h> #include <stdlib.h> #include <string.h> #include <WinSock2.h> #include <WS2tcpip.h> #pragma comment(lib, "ws2_32.lib")char* get_filename(c…

【Python】 如何将列表转换为字符串

基本原理 在Python中&#xff0c;列表&#xff08;list&#xff09;和字符串&#xff08;string&#xff09;是两种不同的数据类型。列表是一个有序的元素集合&#xff0c;可以包含不同类型的元素&#xff0c;而字符串则是一个字符序列。有时&#xff0c;我们可能需要将列表中…