[Nginx]Ngnix基础

news2025/6/7 2:38:21

文章目录

  • 一、基础
    • 1.1 what can nginx do
      • 1.1.1 基本HTTP服务
      • 1.1.2 高级HTTP服务
      • 1.1.3 Nginx常用的功能模块
      • 1.1.4 Nginx的核心组成
    • 1.2 why nginx?
    • 1.3 安装(略)
    • 1.4 nginx的目录结构
    • 1.5 nginx.conf的几个关键配置
      • keepalive_timeout
      • keepalive_requests
      • server块和location块
      • 静态资源
      • 如何将Nginx作为一个简单的文件下载服务器(实用)
  • 二、
  • 三、

一、基础

1.1 what can nginx do

Nginx提供的基本功能服务从大体上归纳为"基本HTTP服务"、“高级
HTTP服务”和"邮件服务"(略)等三大类。

1.1.1 基本HTTP服务

Nginx可以提供基本HTTP服务,可以作为HTTP代理服务器和反向代理服
务器,支持通过缓存加速访问,可以完成简单的负载均衡和容错,支持
包过滤功能
,支持SSL等。

  • 处理静态文件、处理索引文件以及支持自动索引;
  • 提供反向代理服务器,并可以使用缓存加上反向代理,同时完成负载
    均衡和容错;【??? 如何缓存加速】
  • 提供对FastCGI、memcached等服务的缓存机制,,同时完成负载均
    衡和容错;
  • 使用Nginx的模块化特性提供过滤器功能。Nginx基本过滤器包括
    gzip压缩、ranges支持、chunked响应、XSLT、SSI以及图像缩放
    等。其中针对包含多个SSI的页面,经由FastCGI或反向代理,SSI过
    滤器可以并行处理。
  • 支持HTTP下的安全套接层安全协议SSL.
  • 支持基于加权和依赖的优先权的HTTP/2

1.1.2 高级HTTP服务

  • 支持基于名字和IP的虚拟主机设置
  • 支持HTTP/1.0中的Keep-Alive模式和管线(PipeLined)模型连接
    自定义访问日志格式、带缓存的日志写操作以及快速日志轮转。
  • 提供3xx~5xx错误代码重定向功能
  • 支持重写(Rewrite)模块扩展
  • 支持重新加载配置以及在线升级时无需中断正在处理的请求
  • 支持网络监控
  • 支持FLV和MP4流媒体传输

1.1.3 Nginx常用的功能模块

静态资源部署
	Rewrite地址重写
	正则表达式
	反向代理
负载均衡
	轮询、加权轮询、ip_hash、url_hash、fair
Web缓存
环境部署
	高可用的环境
用户认证模块...

1.1.4 Nginx的核心组成

nginx二进制可执行文件
nginx.conf配置文件
error.log错误的日志记录
access.log访问日志记录

1.2 why nginx?

(1) 速度更快、并发更高
单次请求或者高并发请求的环境下,Nginx都会比其他Web服务器响应
的速度更快。一方面在正常情况下,单次请求会得到更快的响应,另一
方面,在高峰期(如有数以万计的并发请求),Nginx比其他Web服务器更
快的响应请求。Nginx之所以有这么高的并发处理能力和这么好的性能
原因在于Nginx采用了多进程和I/O多路复用(epoll)的底层实现

(2)配置简单,扩展性强
Nginx的设计极具扩展性,它本身就是由很多模块组成,这些模块的使
用可以通过配置文件的配置来添加。这些模块有官方提供的也有第三方
提供的模块,如果需要完全可以开发服务自己业务特性的定制模块。

(3)高可靠性
Nginx采用的是多进程模式运行,其中有一个master主进程和N多个
worker进程
,worker进程的数量我们可以手动设置,每个worker进程
之间都是相互独立提供服务,并且master主进程可以在某一个worker进
程出错时,快速去"拉起"新的worker进程提供服务。

(4)热部署
现在互联网项目都要求以7*24小时进行服务的提供,针对于这一要求,
Nginx也提供了热部署功能,即可以在Nginx不停止的情况下,对Nginx
进行文件升级、更新配置和更换日志文件等功能。

(5)成本低、BSD许可证
BSD是一个开源的许可证,世界上的开源许可证有很多,现在比较流行
的有六种分别是GPL、BSD、MIT、Mozilla、Apache、LGPL。

在这里插入图片描述

1.3 安装(略)

nginx安装文档

1.4 nginx的目录结构

在这里插入图片描述

1.5 nginx.conf的几个关键配置

keepalive_timeout

用来设置长连接的超时时间
在这里插入图片描述

keepalive_requests

用来设置一个keep-alive连接使用的次数
在这里插入图片描述

server块和location块

可配置内容过多,后续再讲

静态资源

有些写死的内容可以放到nginx ,让流量甚至都不需要到real server了,比如

location /get_text {
#这里也可以设置成text/plain
default_type text/html;
return 200 "This is nginx's text";
}

如何将Nginx作为一个简单的文件下载服务器(实用)

有时需要传递文件给同事,可以把文件放到云主机的nginx服务器上,让同事自己下载。当然tomcat之流也能搞,不过Nginx很简单很强大。

location /download/ {
    alias /usr/local/nginx/html/;

    if ($request_filename ~* ^.*?\.(html|doc|pdf|zip|docx|txt)$) {
        add_header Content-Disposition attachment;
        add_header Content-Type application/octet-stream;
    }
    sendfile on;   # 开启高效文件传输模式
    autoindex on;  # 开启目录文件列表
    autoindex_exact_size on;  # 显示出文件的确切大小,单位是bytes
    autoindex_localtime on;  # 显示的文件时间为文件的服务器时间
    charset utf-8,gbk;  # 避免中文乱码
}


二、

三、

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

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

相关文章

Python自动化测试实战篇(4)selenium+unttest+ddt实现自动化用例测试,模拟用户登陆点击交互测试,Assert捕获断言多种断言

这些是之前的文章,里面有一些基础的知识点在前面由于前面已经有写过,所以这一篇就不再详细对之前的内容进行描述 Python自动化测试实战篇(1)读取xlsx中账户密码,unittest框架实现通过requests接口post登录网站请求&…

详讲常见的字符函数

👦个人主页:Weraphael ✍🏻作者简介:目前是C语言学习者 ✈️专栏:C语言航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&a…

最近大火的chatGPT是什么?它是怎样聊天的?

ChatGPT是一款革命性的聊天机器人软件, ChatGPT( ChatGPT AI,聊天机器人欢迎您!)的核心功能是自动回复,可以根据客户的输入自动生成回复,从而提高客户服务的效率。还可以根据客户的输入自动生成…

四种幂等性解决方案

什么是幂等性? 幂等是一个数学与计算机学概念,在数学中某一元运算为幂等时,其作用在任一元素两次后会和其作用一次的结果相同。 在计算机中编程中,一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。 幂等…

C++学习记录——유 类和对象(3)

文章目录1、赋值运算符重载1、运算符重载1、理解2、运算符重载实例2、赋值运算符重载2、日期类的实现1、加减函数1、加函数2、减函数2、前/后置--重载3.两个日期相减其他1、流插入2、流提取日期类的整体实现代码: https://gitee.com/kongqizyd/start-some-c-codes-for-learning…

WebDAV之葫芦儿·派盘+KMPlayer

KMPlayer 支持WebDAV方式连接葫芦儿派盘。 KMPlayer几乎可以播放您系统上所有的影音文件,支持几乎全部音视频格式。通过其强大的插件功能,可以支持层出不穷的新格式。软件还具有齐全的操控功能,支持捕获音频、捕获AVI、捕获画面、外挂字幕、自定义编辑设置,是视频爱好者的不…

吞噬互联网:边缘计算和新商业网络的兴起

五年前,Gartner博客的一篇文章写道:“边缘将吞噬云。”表达的大概意思是,当大家都在特别关注云端时,Gartner看到了另一个方向——边缘,更能满足大家对低延迟和近乎实时处理的需求。如果快进五年,到2028 年&…

【Spark分布式内存计算框架——Spark Core】4. RDD函数(下) 重分区函数、聚合函数

重分区函数 如何对RDD中分区数目进行调整(增加分区或减少分区),在RDD函数中主要有如下三个函数。 1)、增加分区函数 函数名称:repartition,此函数使用的谨慎,会产生Shuffle。 2)、…

回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出

回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出 目录回归预测 | MATLAB实现PSO-LSSVM粒子群算法优化最小二乘支持向量机多输入单输出预测效果基本介绍模型描述程序设计参考资料预测效果 基本介绍 MATLAB实现PSO_LSSVM粒子群算法优化最小二乘支持…

车道线检测-LaneATT 论文学习笔记

论文:《Keep your Eyes on the Lane: Real-time Attention-guided Lane Detection》 地址:https://arxiv.org/abs/2010.12035v2 代码:https://github.com/lucastabelini/LaneATT 整体结构 车道线的表示方式 Lane{(xi,yi)}i0Npts−1,yii⋅Hima…

【23种设计模式】结构型模式详细介绍

前言 本文为 【23种设计模式】结构型模式 相关内容介绍,下边将对适配器模式,桥接模式,组合模式,装饰模式,外观模式,亨元模式,代理模式,具体包括它们的特点与实现等进行详尽介绍~ &a…

mysql物理innobackupex备份脚本和自动备份脚本

目录 备份命令 恢复命令 自动备份脚本 innobackupex是一款MySQL备份工具,备份速度快(通过直接copy物理文件),而且支持压缩、流式传输、加密等功能 新安装的数据库自带innobackupex,如果找不到命令,需安装percona-xtrabackup-2…

python数据结构:数组、链表、栈、队列、树

目录1.数组1.1 数组的数据结构1.1.1 数组的定义1.1.2 随机访问和连续内存1.1.3 静态内存和动态内存1.1.4 物理大小和逻辑大小1.2 数组的操作1.2.1 增加数组大小1.2.2 减小数组大小1.2.3 插入一项1.2.4 删除一项1.2.5 复杂度权衡1.3 二维数组2.链表2.1 链表分类2.2 链表特点2.3 …

OKCC呼叫中心使用中常见问题及处理方法

经常有客户咨询在使用OKCC呼叫中心系统时遇到的一些常见但不复杂的问题,下面整理了一些问题和处理方法给伙伴们参考:一、外呼任务为何启动后会自动暂停?1.检查该账户余额是否充足;2.外呼任务班组中是否有空闲坐席;3.分…

终于找到blender渲染总是崩溃的原因了

如果您开始渲染,Blender 会崩溃,并在渲染过程中自动关闭,可能是由于这两个主要原因之一。Blender 用完了可用内存显卡有问题在本文中,我们将了解如何处理 Blender 在渲染时崩溃的情况。Blender内存不足如果我们从 RAM 问题开始。要…

卸载Node.js

0 写在前面 无论您是因为什么原因要卸载Node.js都必须要卸载干净。 请阅读: 1 卸载步骤 1.1通过控制面板卸载node.js winR—>control.exe—>卸载程序—>卸载Node.js 等待—>卸载成功 1.2 删除安装时的nodejs文件夹 通过记忆或者Everthing搜索找…

《MySQL学习》 事务隔离 与 MVCC

《MySQL学习》 事务隔离 一.事务的概念 事务保证一组数据要么全部成功要么全部失败,MySQL的事务基于引擎(如InnoDB)实现。 二.事务的隔离性与隔离级别 MySQL的标准隔离级别: 读未提交 : 一个事务还没提交时&#…

网络变压器与不同芯片之间的匹配原则及POE通讯产品需要注意哪些方面

Hqst盈盛电子导读:网络变压器与不同芯片之间的匹配原则及POE通讯产品需要注意哪些方面网络变压器与不同芯片之间的匹配原则:一,电流型PHY芯片一般要配的网络变压器:1、变压器PHY侧3线共模电感 (更适合POE产品&#xff…

Nginx_3

Rewrite功能配置 Rewrite是Nginx服务器提供的一个重要基本功能,是Web服务器产品中几乎必备的功能。主要的作用是用来实现URL的重写。www.jd.com 注意:Nginx服务器的Rewrite功能的实现依赖于PCRE的支持,因此在编译安装Nginx服务器之前,需要安…

Thinkphp大型进销存ERP源码/ 进销存APP源码/小程序ERP系统/含VUE源码支持二次开发

框架:ThinkPHP5.0.24 uniapp 包含:服务端php全套开源源码,uniapp前端全套开源源码(可发布H5/android/iod/微信小程序/抖音小程序/支付宝/百度小程序) 注:这个是全开源,随便你怎么开,怎么来&a…