nginx 以及nginx优化

news2024/11/25 0:23:47

目录

nginx功能介绍

静态文件服务

反向代理

动态内容处理

SSL/TLS 加密支持

虚拟主机支持

URL 重写和重定向

缓存机制

日志记录

可扩展性和灵活性

nginx的主要应用场景

nginx常用命令

nginx另外一种安装方式

nginx常用的信号符:

nginx配置文件详解


nginx功能介绍

Nginx 是一款高性能的开源 Web 服务器和反向代理服务器,它具有以下主要功能:

静态文件服务

Nginx 可以直接提供静态文件的服务,例如 HTML、CSS、JavaScript、图像等。
它能够高效地处理并响应静态文件的请求。

反向代理

Nginx 可以作为反向代理服务器,将客户端的请求转发给后端的多个服务器。
它可以实现负载均衡、高可用性和故障转移,提供更好的性能和可靠性。

动态内容处理

Nginx可以与后端应用服务器(如 PHP-FPM、Node.js、Java 应用服务器等)配合使用,
实现动态内容的处理和执行。它可以代理动态请求,并将请求的结果返回给客户端。
 

SSL/TLS 加密支持

Nginx 支持通过 SSL/TLS 对客户端和服务器之间的通信进行加密,
提供安全的 HTTPS 连接。

虚拟主机支持

Nginx 支持配置多个虚拟主机,使得可以在同一台服务器上托管多个域名或站点。
每个虚拟主机可以拥有独立的配置和资源。

URL 重写和重定向

Nginx 支持灵活的 URL 重写和重定向规则,可以对请求的 URL 进行修改和重定向,
实现 URL 的美化和重定向策略。

缓存机制

Nginx 提供了强大的缓存功能,可以缓存静态文件和动态内容,
以减轻后端服务器的负载并提供更快的响应速度。

日志记录

Nginx 能够记录访问日志和错误日志,可以记录请求的详细信息,包括访问时间、请求路径、
IP、响应状态等,帮助进行故障排查和性能分析。

可扩展性和灵活性

Nginx 的模块化架构和强大的配置选项使得它具有很高的可扩展性和灵活性。
你可以通过加载不同的模块和自定义配置来满足特定的需求。

nginx的主要应用场景

1、静态服务

2、反向代理,负载均衡

3、缓存服务

4、动态服务

nginx常用命令

nginx -t:检查配置文件是否配置正确

nginx -v:查看nginx的版本号

nginx -s:向主进程传输信号(停止、开启、重启、重新加载)

nginx -c:设置配置文件的默认路径

nginx另外一种安装方式

epel源

yum install -y epel-release

yum install nginx -y

nginx常用的信号符:

信号符结合kill命令

kill -USR 1 pid号 #日志分割

kill -s HUP pid号 #只要是kill,只能跟pid号,重新加载

killall -s HUP nginx #用killall可以跟服务名,也可以用pid号

kill -s QUIT pid号 #优雅退出,有人访问时,不会结束进程,访问完了,才会结束进程

kill -s WINCH pid号 #优雅的结束worker,直到请求完成,才会结束worker进程
 

nginx配置文件详解

 

work_processes 1; #工作进程也就是worker进程的数量,一般是配置成cpu数一致或者2倍。一般来说小网站设置成1,足够了。

 

events块配置影响nginx服务器与用户之间的网络连接

worker_connections 1024; #每个进程可以处理的最大连接数 //ulimit -a 可以查看连接数限制

修改linux服务器文件的最大打开数量:ulimit -n 65535 (linux只支持打开65535) //临时修改

 

http模块主要是针对http请求的配置,代理、缓存、日志,反向代理,虚拟web主机,server块。

非http请求的方式,不能写在该模块当中。反向代理:七层,四层(不能配置在http模块中)

keepalive_timeout 65; #65秒

gzip on #打开压缩模块


 

 

server模块可以配置虚拟主机的相关参数,一个http模块当中,可以有多个server模块,一个server模块对应一个虚拟主机

server {

listen 80;

server_name office.dmsd.tech;

root /nginx/www;

index index.php index.html index.html;

charset utf-8;

access_log logs/access.log;

error_log logs/error.log;

}
 

 

location模块匹配的是URI

location / #通用匹配

location = #精确匹配

location模块中

root 拼接,root指定的目录和location匹配的uri之间做的一个拼接,/opt/ky30 这两个路径都要真实存在,而且都是目录,并且,在uri目录里面要有web文件。

alias:匹配指定路径下的web文件

root后面有没有/无所谓 root /opt/

alias加了/,后面也必须有/,否则,匹配不到 alias /opt

 

root标签可以使用重定向

alias不可以设置重定向

proxy_pass #反向代理配置,也是写在location模块当中

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

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

相关文章

【软件测试】Linux环境Ant调用Jmeter脚本并且生成测试报告(详细)

目录:导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结(尾部小惊喜) 前言 准备工作 需要在…

K8s环境下监控告警平台搭建及配置

Promethues是可以单机搭建的,参考prometheus入门[1] 本文是就PromethuesGrafana在K8s环境下的搭建及配置 Prometheus度量指标监控平台简介 启动minikube minikube start 安装helm 使用Helm Chart 安装 Prometheus Operator: helm install prometheus-operator stabl…

kubernetes的存储卷使用

目录 一、为什么使用存储卷 二、emptyDir存储卷 1.概念 2.创建Pod emptyDir 3. 验证emptyDir存储卷 三、hostPath存储卷 1.概念 2.创建Pod hostPath 3.验证hostPath存储卷 三、nfs共享存储卷 1.概念 2.安装nfs,配置nfs服务 3.创建Pod 4.验证nfs存储卷 一、…

quartz定时任务空指针异常

1.错误方式 通过注解把对象给引用进来,然后直接使用。会报空指针异常的,拿不到exportRecordRepository对象。 2.正确方式 网上搜了很多,改完之后依然不能用,最终解决办法。 1.添加自动注入方法 Component public class AutoBe…

适合大学生的兼职有什么?推荐四个靠谱的副业!

不知不觉新学期也要开始了,大学生们会不会因为苦恼的钱不够花而不够尽兴,很多大学生都想利用下课的时间来做一份兼职,但是有很多鉴于学校封校不知道自己可以做什么,我来为大家整理了以下几个大学生在学校内相对可靠的兼职。 第一个…

什么是Node js?什么是React?有什么区别

JavaScript是当今最流行的编程语言之一,它用于开发多种技术,两种这样的技术是Node.js和React。许多学生很难理解Nodejs和React之间的区别。 React和Nodejs之间的主要区别在于它们的使用位置。Nodejs 用于开发应用程序的服务器端,而Reactjs用于…

Co-Occurrence Matrix——共现矩阵原理介绍

文章目录 共现和上下文窗口共现矩阵的生成共现矩阵存在的问题及解决方法主成分分析 PCA奇异值分解 SVD 共现和上下文窗口 共现(Co-occurrence)——对于给定的语料库,一对单词(如w1和w2)的共现是指它们在上、下文窗口中…

Air001基于Keil环境开发,使用airisp串口命令行烧录

Air001基于Keil环境开发,使用airisp串口命令行烧录 有人会有这样的疑惑,使用Keil平台开发,为什么不直接使用CMSIS-DAP直接烧录,还要使用串口方式来去单独烧录,不是我不想,目前使用合宙官方的Air103芯片版本…

SAP采购订单“交货已完成”勾选后仍可收货的原因分析及解决方案

在SAP MM模块项目实施中,很多用户对采购订单中“交货已完成”这个字段(如下图)的功能用途存在困惑。 比如:上图采购订单100个,已收货50个,另外50个因为质量或其它原因不需要供应商再交货,很多用…

echarts 图表设置 滚动条

效果图: 代码实现: 第一种方式: 通过 dataZoom 属性缩放进行配置滚动条。 //给x轴设置滚动条 dataZoom: [{start:0,//默认为0end: 100-1500/31,//默认为100type: slider,show: true,xAxisIndex: [0],handleSize: 0,//滑动条的 左右2个滑…

途乐证券-最准确的KDJ改良指标?

KDJ目标是技术剖析的一种重要目标之一,它是利用随机目标(%R)发展而来的,是一种反映商场超买和超卖状况的买卖目标。KDJ目标由快线(K线)、慢线(D线)和随机值(J线&#xff…

【UE4 RTS】10-RTS HUD Setup

前言 本篇博文主要制作了一个控件蓝图界面,用于显示当前的游戏时间 效果 步骤 1. 新建一个名为“Widgets”的文件夹 在该文件夹中新建一个控件蓝图,命名为“GameTime_HUD” 打开“GameTime_HUD”,添加如下控件 2. 打开玩家控制器“RTS_Pla…

c++雅兰亭库 (yalantinglibs) 介绍及使用(序列化、json和结构体转换、协程)

雅兰亭库(yalantinglibs)介绍 雅兰亭库,名字很优雅,也很强大。它是阿里开源的一个现代C基础工具库的集合, 现在包括 struct_pack, struct_json, struct_xml, struct_yaml, struct_pb, easylog, coro_rpc, coro_io, coro_http 和 async_simple等功能, 也…

斗象科技-2023攻防演练必修高危漏洞集合下载(2个版本)

高危风险漏洞一直是企业网络安全防护的薄弱点,也成为HW 攻防演练期间 红队的重要突破口;每年HW 期间爆发了大量的高危风险漏洞成为红队突破网络 边界防护的一把利器,很多企业因为这些高危漏洞而导致整个防御体系被突破、 甚至靶标失守而遗憾出…

TepeScript 问题记录

问题 对object的所有属性赋值或清空&#xff0c;提示类型错误不能赋值 type VoiceParams {_id?: string | undefined;name: string;sex: string;vc_id: string;model_url: string;preview_url: string;isPrivate: boolean;visible: boolean; }const formData reactive<V…

AI绘画网站都有哪些比较好用?

人工智能绘画网站是一种利用人工智能技术进行图像处理和创作的网站。这些绘画网站通常可以帮助艺术家以人工智能绘画的形式快速生成有趣、美丽和独特的绘画作品。无论你是专业的艺术家还是对人工智能绘画感兴趣的普通人&#xff0c;人工智能绘画网站都可以为你提供新的创作灵感…

痛点缠身的科沃斯!如何重回“扫地茅”?

一度被称为扫地机器人代名词的“扫地茅”科沃斯&#xff0c;尽管仍处于头部阵营的头部&#xff0c;但是从多个角度来看&#xff0c;科沃斯的现状却也称得上是痛点缠身。 而对于这个曾经将扫地机产品带入国内大众视野、完成了用户认知培养的领跑者&#xff0c;到底应该如何去直…

ddia(3)----Chapter3. Storage and Retrieval

However, first we’ll start this chapter by talking about storage engines that are used in the kinds of databases that you’re probably familiar with: traditional relational databases, and also most so-called NoSQL databases. We will examine two families o…

【C语言学习】函数原型

函数原型 代码一 #include<stdio.h> void sum(int begin, int end) {int i;int sum 0;for(ibegin; i<end; i){sum sum i;}printf("%d到%d的和是%d\n", begin, end, sum); }int main() {sum(1,10);sum(20,30);sum(40,50);return 0; }代码二&#xff08;函…

Camunda 7.x 系列【12】创建流程引擎

有道无术,术尚可求,有术无道,止于术。 本系列Spring Boot 版本 2.7.9 本系列Camunda 版本 7.19.0 源码地址:https://gitee.com/pearl-organization/camunda-study-demo 文章目录 1. ProcessEngine2. 创建流程引擎2.1 Java API2.2 XML 配置2.3 Spring2.4 Spring Boot1. Pr…