Nginx基础学习——介绍、安装与常用命令(windows/linux安装详细攻略)

news2025/1/17 3:56:28

目录

前言:

一、 Nginx 基本概念

(1) Nginx 是什么, 做什么事情

(2) 反向代理

(3) 负载均衡

(4) 动静分离​编辑

二、 Nginx安装、常用命令和配置文件

1. 在Windows下的安装与使用

2.在 Linux 系统中安装 Nginx


前言:

本片博客是学完Nginx相关知识后的个人总结的学习笔记,共两篇:基础学习基本使用;本篇是基础学习篇。

每个知识点都附带原文链接, 记录了我的学习轨迹,大家可进行一定的参考;希望对您有所帮助。

Nginx学习大纲图:



一、 Nginx 基本概念

(1) Nginx 是什么, 做什么事情

Nginx ( engine x ) 是一个高性能的 HTTP 和反向代理服务器, 特点是占有内存少, 并发能 力强, 事实上 nginx 的并发能力确实在同类型的网页服务器中表现较好 ​ Nginx 专为性能优化而开发, 性能是其最重要的考量,实现上非常注重效率 , 能经受高负载 的考验,有报告表明能支持高达 50.000 个并发连接数

(2) 反向代理

要学习反向代理,要先知道什么正向代理,什么是代理服务器?

代理服务器概念:(Proxy Server)是一种网络服务器,它充当客户端(如浏览器)和服务器之间的中间媒介。代理服务器接收来自客户端的请求,然后代表客户端向目标服务器发起请求,并将服务器响应的内容返回给客户端。

正向代理概念:正向代理是一个位于客户端和目标服务器之间的代理服务器(中间服务器)。为了从目标服务器取得内容,客户端向代理服务器发送一个请求,并且指定目标服务器,之后代理向目标服务器转发请求,将获得的内容返回给客户端。正向代理的情况下,客户端必须要进行一些特殊的设置才能使用。

特点:正向代理需要主动设置代理服务器ip或者域名进行访问,由设置的服务器ip或者域名去访问内容并返回 正向代理是代理客户端,为客户端收发请求,使真实客户端对服务器不可见。

反向代理概念:反向代理是指以代理服务器来接收客户端的请求,然后将请求转发给内部网络上的服务器,将从服务器上得到的结果返回给客户端,此时代理服务器对外表现为一个反向代理服务器。

对于客户端来说,反向代理就相当于目标服务器,只需要将反向代理当作目标服务器一样发送请求就可以了,并且客户端不需要进行任何设置。

特点:正向代理需要配置代理服务器,而反向代理不需要做任何设置。 反向代理是代理服务器,为服务器收发请求,使真实服务器对客户端不可见。

参考链接:详解正向代理与反向代理_正向代理和反向代理-CSDN博客

(3) 负载均衡

概念:单个服务器解决不了, 我们增加服务器的数量, 然后将请求分发到各个服务器上, 将原先请求集中到单个服务器上的情况改为将请求分发到多个服务器上, 将负载分发到不同的服 务器, 也就是我们所说的负载均衡

(4) 动静分离

动静分离,是指将动态内容和静态内容分开处理的一种方式。通常,动态内容是指由服务器端处理的,例如动态生成的网页、数据库查询等。静态内容是指不需要经过服务器端处理的,例如图片、CSS、JavaScript文件等。通过将动态内容和静态内容分开处理,可以提高服务器的性能和响应速度。

在动静分离中,通常将Nginx作为前端服务器,将静态内容直接由Nginx处理并返回给客户端,而动态内容则交给后端服务器(如应用服务器)处理。Nginx可以通过配置来指定哪些请求是静态内容,这样它就可以直接从磁盘中读取并返回相应的文件,而不需要将请求转发给后端服务器。

参考原文链接:Nginx:动静分离(示意图+配置讲解)_nginx配置静态网页和动态网页-CSDN博客

二、 Nginx安装、常用命令和配置文件

1. 在Windows下的安装与使用

我是参考了下面这篇非常详细的教程,原文链接如下:

 在Windows下的安装与使用:icon-default.png?t=O83Ahttps://blog.csdn.net/weixin_44251179/article/details/129700793

Nginx基本目录:

  • conf:存在Nginx配置文件的目录

  • docs:存放Nginx文档的目录

  • html:存放静态html文件的目录

  • logs:存放Nginx日志的目录

  • temp:存放临时文件的目录

参考链接:windows系统下安装Nginx以及简单使用(详解)_nginx windows-CSDN博客

2.在 Linux 系统中安装 Nginx

a.首先,安装 pcre 依赖

第一步 联网执行以下命令,下载 pcre 压缩文件

使用命令 wget http://downloads.sourceforge.net/project/pcre/pcre/8.45/pcre-8.45.tar.gz

第二步 使用命令,解压压缩文件

tar -xvf pcre-8.37.tar.gz

第三步 进入pcre-8.37目录下,然后

执行命令:./configure 开始自动配置;

自动配置完成后,回到 pcre 目录下执行 make && make install

b. 然后,安装 openssl 、 zlib 、 gcc 依赖

`使用命令 yum -y install make zlib zlib-devel gcc-c++ libtool openssl openssl-devel

c. 最后,安装 Nginx

第一步 进入/usr/src目录下,上传压缩包nginx.tar.gz

第二步 解压压缩文件

tar -xvf nginx.tar.gz

第三步 进入nginx目录下,然后

执行命令:./configure 开始自动配置;

自动配置完成后,回到 pcre 目录下执行 make && make install

至此,Nginx安装/配置完成,进入/usr/local/nginx/sbin目录下,启动nginx

执行命令:./nginx 启动nginx` ;

执行命令:ps -ef | grep nginx 查看nginx进程是否成功启动

d. 关于Linux防火墙的设置

Linux打开/关闭防火墙的命令如下1234:(此处是参考链接,点击跳转原文)

  • 查看防火墙状态:systemctl status firewalld

  • 开启防火墙:systemctl start firewalld

  • 关闭防火墙:systemctl stop firewalld

  • 查看防火墙运行状态:firewall-cmd --state

  • 禁用,禁止开机启动:systemctl disable firewalld

简述:防火墙开启后,会默认屏蔽掉所有的请求,我们需要手动添加开放端口,只有被开放的端口,才能用浏览器访问。

  • 查看开放的端口号:firewall-cmd --list-all

  • 设置开放的端口号:

    添加HTTP服务:

    firewall-cmd --add-service=http --permanent

    用于永久地将HTTP服务添加到防火墙允许的服务列表中。通常一旦你添加了HTTP服务,实际上已经自动允许了访问TCP端口80

    开放TCP端口80:

    firewall-cmd --add-port=80/tcp --permanent

  • 重启防火墙:firewall-cmd --reload

(2)Nginx 常用命令

  • 进入 nginx 目录中:cd /usr/local/nginx/sbin

  • 查看 nginx 版本号:./nginx -v

  • 启动nginx:./nginx

  • 停止 nginx:./nginx -s stop

  • 重新加载nginx配置文件:./nginx -s reload

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

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

相关文章

人脸识别Adaface之libpytorch部署

目录 1. libpytorch下载2. Adaface模型下载3. 模型转换4. c推理4.1 前处理4.2 推理4.3 编译运行4.3.1 写CMakeLists.txt4.3.2 编译4.3.3 运行 1. libpytorch下载 参考: https://blog.csdn.net/liang_baikai/article/details/127849577 下载完成后,将其解…

Windows电脑伪关机(快速启动模式),怎么真关机

Windows电脑在关机的时候,进入到一个伪关机的状态,也就是并没有真正的关机,但是在一些系统更新、变更了一些设置,进行重启等操作也会进入到真关机状态 这种一般是开启快速启动模式,开启了快速启动模式功能会在关机的时…

Bellman-Ford 算法详解及应用

Bellman-Ford 算法详解及应用 图24-4 的结构(假设)Bellman-Ford 算法步骤伪代码C 语言实现 Bellman-Ford 算法运行结果分析输出示例(部分)Bellman-Ford 算法是一种用于计算单源最短路径的算法,即从给定的源节点到其他所有节点的最短路径。它可以处理带有负权重的边,但不适…

92.插入排序

一.什么是插入排序 把数据分为有序和无序俩个部分,将无序部分中的一个数据插入到已排好的有序部分中,有序部分从而变成一个新的、排好数据数量增1的有序数据,直到数据全部排序完成。 插入排序一般适用于小型数据。大型数据性能较差。 二.实…

69 mysql 中 is null 的实现

前言 Mysql 中我们偶尔会用到 字段为 NULL 的情况 这时候 我们只能使用查询 “select * from tz_test_02 where field1 is null;” 来进行 field1 字段为 null 的行的查询 然后如果是使用 “select * from tz_test_02 where field1 null;” 你会发现查询 不出数据 但是如…

A1017 基于Java+JSP+SQL Server+servlet的二手购物平台的设计与实现

二手购物平台 1.摘要2.开发目的和意义3.系统功能设计4.系统界面截图5.源码获取 1.摘要 摘 要 计算机以及网络技术的飞速发展,网络的应用在全国乃至全球日益普及,随着人们的思想水平和生活水平的提高,网络已经是人们必不可少的一部分。人们的…

力扣-图论-6【算法学习day.56】

前言 ###我做这类文章一个重要的目的还是给正在学习的大家提供方向和记录学习过程(例如想要掌握基础用法,该刷哪些题?)我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非…

使用PHPUnit使用本地调试代替远程调试,快速提高开发效率

Laravel 是一个在 Linux 环境下表现非常出色的 PHP 框架,但它在 Windows 环境下可能会遇到一些兼容性和配置问题。为了调试或没试的方便可以在 Windows 环境下进行 Laravel PHPUnit进行本地调试和测试。 本地主要针对断点调试效果非常高效。 在 Laravel 中&#x…

动态规划 - 4( 背包问题 10000 字详解 )

一: 背包问题 1.1 01 背包 题目链接:01 背包 import java.util.Scanner;public class Main {public static void main(String[] args) {// 不做空间优化,用 dp 表存下所有状态Scanner sc new Scanner(System.in);// 读入 n 和 Vint n sc.…

关于利用 EtherNet/IP 转 Profinet 网关模块实现罗克韦尔变频器接入西门子 PLC 的配置范例

在现代工业自动化领域,不同品牌设备之间的通信兼容性问题一直是企业面临的挑战之一。某智能工厂为了优化生产流程,提高设备的协同工作效率,决定对其生产线上的控制系统进行升级改造。该生产线中,AB罗克韦尔PowerFlex变频器作为关键…

论文研读|信息科技风险管理模型的主要内容、定位、目标企业、风险管理机制, 以及相应的风险评估流程和风险应对策略

文献来源:[1]李政.商业银行数据中心风险管理研究[D].合肥工业大学[2024-12-08]. 内容总结:风险管理是一项不断发展完善的体系化工作。本章研究了国际上普遍使用的风险管理基本模型、并针对主流的信息科技风险管理的框架进行研究、分析,重点研…

MySQL-DML之数据表操作

文章目录 一. 插入表记录1. 向表中插入部分字段2. 向表中插入所有字段,字段的顺序为创建表时的顺序3. 一次添加多条数据信息 二. 更新表记录1. 更新所有记录的指定字段 更新符号条件记录的指定字段2. 更新符号条件记录的指定字段 三. 删除表记录1. 按条件删除记录2. 清空记录 四…

mac mini 4 上手指南

文章目录 和 mac 初见购机历程外设配置win 系统 适应 mac 系统一些使用体验mac 快捷键 和 mac 初见 最开始用 mac 是小时候用着刷成 windows 的 MacBook 和好朋友一起打游戏,再后来就是上大学,用朋友的 mac 做一些简单的办公 购机历程 我之前 11月2日…

Apache AGE:基于PostgreSQL的图数据库

Apache AGE(A Graph Extension)是一个基于 PostgreSQL 的图数据库。它以扩展插件的形式提供,可以在利用 PostgreSQL 先进的 SQL 查询功能和事务支持的同时,享受图数据库的灵活性和可扩展性。 Apache AGE 最初由 Bitnine Global In…

关于springBoot+vue项目中配置SSL证书问题

前端可以通过https进行访问 1.前端在访问后端接口时,使用https进行访问,在request.js配置文件中,这个文件是配置axios的基本请求的,在基础请求地址中改为https方式 2.需要在Linux中的nginx中配置ssl证书,具体请参考&…

华为、华三交换机纯Web下如何创关键VLANIF、操作STP参数

华为交换机WEB操作 使用的是真机S5735,目前主流的版本都适用(V1R5~V2R1的就不在列了,版本太老了,界面完全不一样,这里调试线接的console口,电脑的网络接在ETH口) 「模拟器、工具合集」复制整段内…

二分查找(带图详解)

优选算法系列 文章目录 优选算法系列前言一、二分查找的思想二、算法使用小总结 三、代码实现四、二分查找拓展4.1、查找第一次出现的target小总结 4.2、target最后出现的位置小总结 五、代码总结 前言 在这篇博客中,我会给大家分享二分查找及其扩展。 这是链接-&…

【C#】NET 9中LINQ的新特性-CountBy

前言 在 .NET 中,使用 LINQ 对元素进行分组并计算它们的出现次数时,需要通过两个步步骤。首先,使用 GroupBy方法根据特定键对元素进行分类。然后,再计算每个组元素包含个数。而随着 .NET 9 版本发布,引入了一些新特性。其中 LINQ 引入了一种新的方法 CountBy,本文一起来了…

[SWPUCTF 2022 新生赛]funny_php

进入靶场环境 <?phpsession_start();highlight_file(__FILE__);if(isset($_GET[num])){if(strlen($_GET[num])<3&&$_GET[num]>999999999){echo ":D";$_SESSION[L1] 1;}else{echo ":C";}}if(isset($_GET[str])){$str preg_replace(/NS…

2024-10-13-B fd 重定向 缓冲区

1 一切皆文件 1.1 虚拟文件系统 在系统层面&#xff0c;做了一层软件的封装&#xff0c;struct file 里有操作表&#xff08;即函数指针的集合&#xff09;&#xff0c;可以调用底层的读写方法。虚拟文件系统&#xff08;VFS&#xff09;是一种神奇的抽象&#xff0c;它使得…