当前位置: 首页 > news >正文

Nginx:Linux配置Nginx

目录

    • 一、环境安装
      • 1.1 GCC编译器
      • 1.2 PCRE
      • 1.3 Zlib
      • 1.4 OpenSSL
      • 1.5 快速下载
    • 二、Nginx源码简单安装
      • 2.1 下载安装包
      • 2.2 解压
      • 2.3 进入资源文件中
      • 2.4 编译、安装
    • 三、Yum安装
    • 四、Nginx源码复杂安装
      • 4.1 参数介绍
      • 4.2 参数配置
    • 五、卸载Nginx
      • 5.1 关闭Nginx进程
      • 5.2 将安装的Nginx删除
      • 5.3 将安装包之前编译的环境清除


一、环境安装

1.1 GCC编译器

Nginx是C语言编写的程序,因此想要运行Nginx就需要一个编译工具。GCC就是一个开源的编译器集合,用于处理各种各样的语言,包括C语言。

ym install -y gcc

安装成功之后可以通过gcc --version查看GCC是否安装成功。

1.2 PCRE

Nginx在编译过程中需要使用到PCRE(兼容正则表达式库),因为在Nginx的Rewrite模块和http核心模块都会使用到PCRE正则表达式语法。

yum install -y pcre pcre-devel

安装成功之后可以通过rpm -qa pcre pcre-devel查看PCRE是否安装成功。

1.3 Zlib

zlib压缩工具,在Nginx的各个模块中需要使用gzip压缩

yum install -y zlib zlib-devel

安装成功之后可以通过rpm -qa zlib zlib-devel查看Zlib是否安装成功。

1.4 OpenSSL

OpenSSL是一个开放源代码的软件库包,应用程序可以根据这个包进行安全通信,并且避免被窃听。

yum install -y openssl openssl-devel

安装成功之后可以通过rpm -qa openssl openssl-devel查看PCRE是否安装成功。

1.5 快速下载

yum install -y gcc pcre-devel zlib zlib-devel openssl openssl-devel

二、Nginx源码简单安装

2.1 下载安装包

网址
旧版网址

在这里插入图片描述

2.2 解压

tar -zxf nginx-1.26.2.tar.gz

2.3 进入资源文件中

./configure

2.4 编译、安装

make && make install

编译完成之后 ,Nginx会安装在/usr/local/nginx,进入目录/usr/local/nginx/sbin输入./nginx启动Nginx

三、Yum安装

安装必备组件

sudo yum install yum-utils

要设置yum存储库,请创建名为/etc/yum.repos.d/nginx.repo的文件,其中包含以下内容:

vim /etc/yum.repos.d/nginx.repo
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

要安装nginx,请运行以下命令:

sudo yum install nginx

启动Nginx,Nginx的安装目录在/usr/sbin,输入./nginx启动Nginx

四、Nginx源码复杂安装

Nginx复杂安装与简单安装的区别在于./configure编译时要手动设置参数。

4.1 参数介绍

PATH:是和路径相关的配置信息
with:是启动模块,默认是关闭的
without:是关闭模块,默认是开启的

  • –prefix=PATH

指向Nginx的安装目录,默认值:/usr/local/nginx

  • –sbin-path=PATH

指向执行程序文件的路径,默认值:<prefix>/sbin/nginx

  • –modules-path=PATH

指向Nginx动态模块安装目录,默认值:<prefix>/modules

  • –conf-path=PATH

指向Nginx配置文件的安装目录,默认值:<prefix>/conf/nginx.conf

  • –error-log-path=PATH

指向错误日志文件的安装目录,默认值:<prefix>/logs/error.log

  • –http-log-path=PATH

指向访问日志文件的安装目录,默认值:<prefix>/logs/access.log

  • –pid-path=PATH

指向Nginx启动后进行ID的文件路径,默认值:<prefix>/logs/nginx.pid

  • –lock-path=PATH

指向Nginx锁文件的路径,默认值:<prefix>/logs/nginx.lock

4.2 参数配置

./configure --prefix=/home/soft/nginx-1.26.2 
--sbin-path=/home/soft/nginx-1.26.2/sbin/nginx 
--modules-path=/home/soft/nginx-1.26.2/modules 
--conf-path=/home/soft/nginx-1.26.2/nginx.conf 
--error-log-path=/home/soft/nginx-1.26.2/logs/error.log 
--http-log-path=/home/soft/nginx-1.26.2/logs/access.log 
--pid-path=/home/soft/nginx-1.26.2/logs/nginx.pid 
--lock-path=/home/soft/nginx-1.26.2/logs/nginx.lock 

五、卸载Nginx

5.1 关闭Nginx进程

./nginx -s stop

5.2 将安装的Nginx删除

rm -rf /usr/local/nginx

5.3 将安装包之前编译的环境清除

make clean

相关文章:

Nginx:Linux配置Nginx

目录 一、环境安装1.1 GCC编译器1.2 PCRE1.3 Zlib1.4 OpenSSL1.5 快速下载 二、Nginx源码简单安装2.1 下载安装包2.2 解压2.3 进入资源文件中2.4 编译、安装 三、Yum安装四、Nginx源码复杂安装4.1 参数介绍4.2 参数配置 五、卸载Nginx5.1 关闭Nginx进程5.2 将安装的Nginx删除5.…...

WebRTC音频 04 - 关键类

WebRTC音频01 - 设备管理 WebRTC音频 02 - Windows平台设备管理 WebRTC音频 03 - 实时通信框架 WebRTC音频 04 - 关键类(本文) 一、前言&#xff1a; 在WebRTC音频代码阅读过程中&#xff0c;我们发现有很多关键的类比较抽象&#xff0c;搞不清楚会导致代码阅读一脸懵逼。比如…...

Elasticsearch:Redact(编辑) processor

Redact 处理器使用 Grok 规则引擎来隐藏输入文档中与给定 Grok 模式匹配的文本。该处理器可用于隐藏个人身份信息 (Personal Identifying Information - PII)&#xff0c;方法是将其配置为检测已知模式&#xff0c;例如电子邮件或 IP 地址。与 Grok 模式匹配的文本将被替换为可…...

O2OA结合备份脚本和定时任务进行数据库的备份,我们以MySQL数据库为例

概述 系统运行一段时间后&#xff0c;可能发生各种情况导致数据丢失&#xff0c;如硬件故障、人为错误、软件错误、病毒攻击等。定期备份可以帮助您保护数据免受这些风险的影响&#xff0c;以便在需要时能够恢复数据。 O2OA应用本身可以通过dump配置每天自定备份数据&#xff…...

Python自动化办公:批量提取PDF中的表格到Excel

在现代办公环境中&#xff0c;处理大量的PDF文件并提取其中的表格数据是一项常见而繁琐的任务。手动复制粘贴不仅耗时耗力&#xff0c;还容易出错。Python作为一种功能强大的编程语言&#xff0c;提供了丰富的工具包&#xff0c;可以高效地解决这一问题。本文将介绍如何使用Pyt…...

selenium有多个frame页时的操作方法(5)

之前文章我们提到&#xff0c;在webdriver.WebDriver类有一个switch_to方法&#xff0c;通过switch_to.frame()可以切换到不同的frame页然后才再定位某个元素做一些输入/点击等操作。 比如下面这个测试网站有2个frame页&#xff1a;http://www.sahitest.com/demo/framesTest.h…...

谷歌外链的周期性维护!

外链建设不是一次性的工作&#xff0c;它需要长期的维护和更新&#xff0c;才能持续为网站带来稳定的流量和SEO提升。很多网站在初期通过短期内大规模获取外链的方式&#xff0c;确实能看到排名的提升&#xff0c;但这种方法往往难以维持长期的效果。谷歌更喜欢自然、持续增长的…...

CATIA软件许可管理最佳实践

在当今的工程设计领域&#xff0c;CATIA软件已成为众多企业不可或缺的工具。然而&#xff0c;随着软件使用的广泛普及&#xff0c;许可管理变得尤为关键。本文将为您探讨CATIA软件许可管理的最佳实践&#xff0c;助您在确保合规性的同时&#xff0c;实现成本效益的最大化。 一、…...

大华智能云网关注册管理平台 SQL注入漏洞复现(CNVD-2024-38747)

0x01 产品简介 大华智能云网关注册管理平台是一款专为解决社会面视频资源接入问题而设计的高效、便捷的管理工具,平台凭借其高效接入、灵活部署、安全保障、兼容性和便捷管理等特点,成为了解决社会面视频资源接入问题的优选方案。该平台不仅提高了联网效率,降低了联网成本,…...

什么是思维导图,手把手教你做经典思维导图

在信息爆炸的时代&#xff0c;如何高效整理思绪、激发创意、提升学习效率成为了我们共同面临的挑战。思维导图&#xff0c;这一源自脑科学的思维工具&#xff0c;以其直观、灵活的特点&#xff0c;成为了众多学习者、管理者和创意人士的得力助手。今天&#xff0c;就让我们一起…...

使用GSEA读‘gmt文件‘时最后一行未遂问题解决

最近工作中&#xff0c;使用GSEA网站自定义库下载的gmt文件用函数读取的时候报错&#xff1a; 这种问题在文本文件读取中经常出现&#xff0c;往往因为最后一行未留出/n&#xff0c;也就是最后一行没有换行留出空行。 可以使用notepad打开gmt文件&#xff1a; 发现果然最后一行…...

C++中vector常用函数总结

一&#xff0c;vector vector可以理解为一个边长数组&#xff0c;可以存储不同的类型&#xff0c;int ,double,char,结构体等。 也可以才能出STL标准容器&#xff0c;如set,string,vector等 二&#xff0c;构造函数 vector(size_t n,T val) …...

手撕数据结构 —— 队列(C语言讲解)

目录 1.什么是队列 2.如何实现队列 3.队列的实现 Queue.h中接口总览 具体实现 结构的定义 初始化 销毁 入队列 出队列 取队头元素 取队尾元素 判断是否为空 获取队列的大小 4.完整代码附录 Queue.h Queue.c 1.什么是队列 队列是一种特殊的线性表&#xff0…...

Java知识巩固(五)

目录 基本数据类型 基本类型和包装类型的区别&#xff1f; 自动装箱与拆箱了解吗?原理是什么&#xff1f; 为什么浮点数运算的时候回邮精度丢失的风险&#xff1f; 如何解决浮点数运算的精度丢失问题&#xff1f; 超过 long 整型的数据应该如何表示&#xff1f; 基本数据…...

C# 中 yield关键字的使用

yield return有以下优点&#xff1a; 每次迭代时生成一个值&#xff0c;并且在下次迭代时继续从上次离开的地方开始。 延迟执行&#xff1a;只有在实际需要时才会生成下一个值&#xff0c;这对于处理大量数据非常有用。 节省内存&#xff1a;不需要一次性将所有数据加载到内存中…...

YoloDotNet 的基本使用方法详解

文章目录 一、创建项目与引用库二、模型加载与初始化三、图像数据的处理与输入四、目标检测结果的获取与解析五、性能优化与参数调整一、创建项目与引用库 在使用 YoloDotNet 之前,首先需要在开发环境中创建一个新的项目。可以选择使用 Visual Studio 等开发工具,创建一个 C#…...

0x12 Dapr Dashboard configurations 未授权访问漏洞 CVE-2022-38817

参考: Dapr Dashboard configurations 未授权访问漏洞 CVE-2022-38817 | PeiQi文库 (wgpsec.org)免责声明 欢迎访问我的博客。以下内容仅供教育和信息用途: 合法性:我不支持或鼓励非法活动。请确保遵守法律法规。信息准确性:尽管我尽力提供准确的信息,但不保证其完全准确…...

Android activity 启动流程

Android activity 启动流程 本文主要记录下acitivty的启动流程. 1: Activity 我们都知道启动activity调用方法: startActivity(Intent intent)startActivity(Intent intent, Nullable Bundle options)startActivityForResult(RequiresPermission Intent intent, int reques…...

使用 Go 语言实现 WebSocket的核心逻辑

文章目录 WebSocket 简介时序图核心逻辑Client 结构与功能创建新客户端消息读取逻辑 (ReadPump)发送消息逻辑 (Send)客户端管理器 (ClientManager)WebSocket 处理器处理心跳与长连接 总结 本文将基于 Go 语言&#xff0c;通过使用 gorilla/websocket 库来实现一个简单的聊天应用…...

Linux下的杀毒软件介绍

Linux下的杀毒软件介绍 一、Linux杀毒软件的基本概念和作用二、Linux杀毒软件的选择三、Linux杀毒软件推荐四、Linux杀毒软件对应用进程的影响五、结论在当今数字化和网络化的环境中,保护计算机系统的安全至关重要。尽管Linux操作系统因其开源、稳定且相对安全的特性而较少受到…...

JSONP详解

JSONP&#xff08;JSON with Padding&#xff09;是一种非官方的协议&#xff0c;它允许在服务器端集成Script tags返回至客户端&#xff0c;通过JavaScript callback的形式实现跨域访问。以下是对JSONP的详细解释&#xff1a; 一、JSONP的背景与原理 背景&#xff1a; 由于浏…...

Leetcode—1115. 交替打印 FooBar【中等】(多线程)

2024每日刷题&#xff08;180&#xff09; Leetcode—1115. 交替打印 FooBar C实现代码 class FooBar { private:int n;sem_t fooSem;sem_t barSem;public:FooBar(int n) {this->n n;sem_init(&fooSem, 0, 1);sem_init(&barSem, 0, 0);}~FooBar() {sem_destroy(&…...

Visual Studio Code基础:使用debugpy调试python程序

相关阅读 VS codehttps://blog.csdn.net/weixin_45791458/category_12658212.html?spm1001.2014.3001.5482 一、安装调试器插件 在VS code中可以很轻松地调试Python程序&#xff0c;首先需要安装Python调试器插件&#xff0c;如图1所示。 图1 安装调试器插件 Python Debugge…...

超全!一文详解大型语言模型的11种微调方法

导读&#xff1a;大型预训练模型是一种在大规模语料库上预先训练的深度学习模型&#xff0c;它们可以通过在大量无标注数据上进行训练来学习通用语言表示&#xff0c;并在各种下游任务中进行微调和迁移。随着模型参数规模的扩大&#xff0c;微调和推理阶段的资源消耗也在增加。…...

C 主要函数解析

1、fseek 函数 int fseek(FILE *stream, long offset, int fromwhere); 第一个参数stream为文件指针 第二个参数offset为偏移量&#xff0c;正数表示正向偏移&#xff0c;负数表示负向偏移 第三个参数origin设定从文件的哪里开始偏移,可能取值为&#xff1a;SEEK_CUR、 SEE…...

vue3学习:数字时钟遇到的两个问题

在前端开发学习中&#xff0c;用JavaScript脚本写个数字时钟是很常见的案例&#xff0c;也没什么难度。今天有时间&#xff0c;于是就用Vue的方式来实现这个功能。原本以为是件非常容易的事&#xff0c;没想到却卡在两个问题上&#xff0c;一个问题通过别人的博文已经找到答案&…...

吴恩达深度学习笔记:卷积神经网络(Foundations of Convolutional Neural Networks)3.7-3.8

目录 第四门课 卷积神经网络&#xff08;Convolutional Neural Networks&#xff09;第三周 目标检测&#xff08;Object detection&#xff09;3.7 非极大值抑制&#xff08;Non-max suppression&#xff09;3.8 Anchor Boxes 第四门课 卷积神经网络&#xff08;Convolutional…...

【Linux】最基本的字符设备驱动

前面我们介绍到怎么编译出内核模块.ko文件&#xff0c;然后还加载了这个驱动模块。但是&#xff0c;那个驱动代码还不完善&#xff0c;驱动写好后怎么在应用层使用也没有介绍。 字符设备抽象 Linux内核中将字符设备抽象成一个具体的数据结构&#xff08;struct cdev&#xff…...

利用 Llama 3.1模型 + Dify开源LLM应用开发平台,在你的Windows环境中搭建一套AI工作流

文章目录 1. 什么是Ollama&#xff1f;2. 什么是Dify&#xff1f;3. 下载Ollama4. 安装Ollama5. Ollama Model library模型库6. 本地部署Llama 3.1模型7. 安装Docker Desktop8. 使用Docker-Compose部署Dify9. 注册Dify账号10. 集成本地部署的 Llama 3.1模型11. 集成智谱AI大模型…...

Docker常用命令分享二

docker的用户组管理过程&#xff1a; 1、sudo : 可以让普通用户临时获得root用户的权限&#xff0c;来新建docker用户组 2、普通用户并没有使用sudo的权限 3、先要让root用户把testing用户加入到sudoers的授权文件中 4、sudoers的文件居然是只读的&#xff0c;先解决这个问…...