nVisual部署之nginx配置说明

news2024/10/7 20:33:09

Nginx 是一个高性能的HTTP和反向代理web服务器,因此nvisual在部署前端包时便采用了它作为服务器,版本使用1.14.1以上。在默认的配置下,还需要向nginx各模块添加配置才能达到生产需要。

接下来,从http模块开始,再到server、location模块,分别说明一下各配置的参数。

一、http模块

1.sendfile,用来开启高效的文件传输模式,语法sendfile on |off,默认值off。

2.tcp_nopush,须在sendfile打开的状态下才会生效,主要是用来提升网络包的传输效率,语法tcp_nopush on|off,默认值off。

3.tcp_nodelay,须在keep-alive连接开启的情况下才生效,来提高网络包传输的实时性,语法tcp_nodelay on|off,默认值off。

4.keepalive_timeout,来指定 KeepAlive 的超时时间,若将它设置为 0,就禁止了 keepalive连接。

5.client_max_body_size,限制请求体的大小,在这里主要指定上传文件的大小限制,默认1m,如果很大,还要适当调整上传超时时间,如果超过设定大小,则返回413。

6.client_body_timeout,读取请求实体的超时时间,在这里主要是应用上传文件的时间限制,如果超时,则返回413。

7.include /etc/nginx/mime.types,文件扩展名与文件类型映射表,如果不加载则会出现异常,例如css文件无法解析,页面没有相应的样式。

二、server模块

1.gzip,用于开启或者关闭gzip功能,语法gzip on|off,默认off。

2.gzip_comp_level,用于设置Gzip压缩程度,级别从1-9,1表示压缩程度最低,效率最高,9刚好相反,压缩程度最高,但是效率最低最费时间,所以使用时,注意并不是级别越高越好。建议设置在中间值5/6即可。

3.gzip_min_length,进行压缩响应页面的最小长度,响应页面的大小可以通过头信息中的Content-Length来获取,如果设置的值大于content-length将不进行压缩。

4.gzip_types,所选择的值可以从mime.types文件中进行查找,有些类型比如图片、视频等本身压缩了也节省不了多少空间,反而会浪费CPU资源,所以在选择压缩的时候需要注意是否有必要进行压缩。

5.gzip_vary,用于设置使用Gzip进行压缩发送是否携带“Vary:Accept-Encoding”头域的响应头部。主要是告诉接收方,所发送的数据经过了Gzip压缩处理。

6.gzip_buffers,用于处理请求压缩的缓冲区数量和大小。

7.gzip_http_version,针对不同的HTTP协议版本,可以选择性地开启和关闭Gzip功能,该指令是指定使用Gzip的HTTP最低版本,该指令一般采用默认值即可,默认值是1.1。

 8.proxy_buffering,设置是否开启proxy的buffer功能,参数的值为on或者off。如果这个设置为off,那么proxy_buffers和proxy_busy_buffers_size这两个指令将会失效,但是无论proxy_buffering是否开启,proxy_buffer_size都是生效的。

9.proxy_buffer_size,用来设置一个特殊的buffer大小,从被代理服务器(C)上获取到的第一部分响应数据内容到代理服务器(B)上,通常是header,就存到了这个buffer中,如果该参数设置太小,会出现502错误码,这是因为这部分buffer不够存储header信息。建议设置为4k。

10.proxy_buffers,这个参数设置存储被代理服务器上的数据所占用的buffer的个数和每个buffer的大小,所有buffer的大小为这两个数字的乘积。

11.proxy_busy_buffer_size,在所有的buffer里,我们需要规定一部分buffer把自己存的数据传给A,这部分buffer就叫做busy_buffer,proxy_busy_buffer_size参数用来设置处于busy状态的buffer有多大。对于B上buffer里的数据何时传输给A,

(1)如果完整数据大小小于busy_buffer大小,当数据传输完成后,马上传给A;

(2)如果完整数据大小不少于busy_buffer大小,则装满busy_buffer后,马上传给A;

12.proxy_max_temp_file_size,设置临时文件的总大小。

13.proxy_temp_file_wirte_size,设置同时写入临时文件的数据量的总大小。通常设置为8k或者16k。

三、location模块

1.root,指定根目录

2.index,指定默认访问的页面。

3.try_files,作用是按顺序检查文件是否存在,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如果所有的文件或文件夹都找不到,会进行一个内部重定向到最后一个参数。

 4.proxy_pass,用来设置代理服务器的地址。

5.proxy_redirect,该指令用来修改被代理服务器返回的响应头中的Location头域和“refresh”头域。

 现在的nginx配置不是一成不变的,在将来的需求增加后,也许还会有更多的设定加入,合理的、高效的利用好nginx,也是前端体现高性能的关键所在。

文:王剑飞


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

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

相关文章

英文Paper写作需要了解哪些信息?

写Paper最重要的一点就是要仔细理解,Paper的题目告诉了哪些信息。 The most important thing about writing paper is to carefully understand what information the paper title tells you. 你应当精度每一个单词,从中找到尽可能多的指导。然后需要考虑…

历届图灵奖得主盘点

图灵奖,全称A.M.图灵奖(ACM A.M Turing Award),是由美国计算机协会于1966年设立的计算机奖项,名称取自艾伦麦席森图灵,旨在奖励对计算机事业作出重要贡献的个人 。图灵奖对获奖条件要求极高,评奖…

STC 51单片机43——看门狗

看门狗测试&#xff0c;通过修改delay函数的延时长度&#xff0c;可以看到看门狗是否复位系统。 #include <reg52.h> sfr WDT_CONTR 0xE1; //声明WDT_CONTR void delay(void){ unsigned char i,j,k; for(i0;i<255;i) for(j0;j<2…

测试大老都是怎么理解cookiesession的?

为什么要学习cookie和session呢&#xff1f;若是没有掌握cookie和session的会话机制&#xff0c;就不了解客户端与服务器之间的交互通信原理&#xff0c;也就定位不了产生bug的原因。 cookie与session他们是如何理解的呢&#xff1f; 1、cookie与session区别&#xff1f; co…

笔试强训48天——day21

文章目录一. 单选1. 设一个有序的单链表中有n个结点&#xff0c;现要求插入一个新结点后使得单链表仍然保持有序&#xff0c;则该操作的时间复杂度&#xff08;&#xff09;2. 在一个单链表中&#xff0c;若删除 P 所指结点的后续结点&#xff0c;则执行?3. 设一个链表最常用的…

Thread的使用、线程的几个重要操作和状态【JavaEE初阶】

一、Thread类的常见构造方法 Thread()&#xff1a; 默认无参构造方法&#xff0c;如 &#xff1a;Thread t1 new Thread()&#xff1b; Thread(Runnable target)&#xff1a; 使用 Runnable 创建一个任务&#xff0c;再把 任务 放到线程里面&#xff0c; 如 Thread t2 new Th…

Kamiya丨Kamiya艾美捷小鼠血红蛋白ELISA说明书

Kamiya艾美捷小鼠血红蛋白ELISA预期用途&#xff1a; 小鼠血红蛋白ELISA是一种高灵敏度的双位点酶联免疫分析&#xff08;ELISA&#xff09;小鼠生物样品中血红蛋白的测定。仅供研究使用。 引言 血红蛋白&#xff08;HM&#xff09;是红细胞中的含铁氧转运蛋白。它吸收肺部的…

[附源码]计算机毕业设计springboot行程规划app

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

Vue.js 加入高德地图的实现方法

一、功能需求 1.根据输入内容进行模糊查询&#xff0c;选择地址后在地图上插上标记&#xff0c;并更新经纬度坐标显示 2.在地图点击后&#xff0c;根据回传的左边更新地址信息和坐标显示 二、准备 1.申请高德地图账号&#xff0c;创建应用 2.在应用管理中 获得key 和安全密…

如何获取Power VR GPU数据

什么是Power VR PowerVR 是Imagination公司生产的一种GPU系列。早期的苹果A系列芯片优秀的GPU性能大多是基于Power VR GPU实现的。从早期的游戏机实体建模到现在的移动终端设备图形计算中都能够见到它的身影&#xff0c;虽中间有多次动荡&#xff0c;至今依旧在汽车HMI系统中占…

面板模型进行熵值法分析

背景说明 熵值法&#xff08;熵权法&#xff09;是一种研究指标权重的研究方法&#xff0c;比如有5个指标&#xff0c;分别为指标1到指标5&#xff0c;并且有很多样本&#xff08;比如100个样本&#xff09;&#xff0c;即100行*5列数据&#xff0c;此时研究该5个指标的权重分…

可编程直流电源的特点都有哪些呢?

可编程直流电源是用数字或编码器输入&#xff0c;非电位器调节电压、电流的直流电源。无论是在研发&#xff0c;还是生产测试中&#xff0c;可编程直流电源的宽范围电压输出都适于测试和分析组件、电路、模块和完整器件的特性。那么可编程直流电源的特点都有哪些呢?下面安泰测…

【Java系列】一篇文章阐述常见问题及解决方法

返回主篇章         &#x1f447; 【Java】才疏学浅小石Java问道之路 Java常见问题及解决方法问题1问题2问题3问题4问题1 问题提出&#xff1a; 解决问题&#xff1a; 源文件名不存在或者写错当前路径错误后缀名隐藏问题 问题2 问题提出&#xff1a; 解决问题&a…

加码中文 AIGC,IDEA 推出“盖亚计划”

作者 | 伍杏玲 出品 | CSDN 近年来&#xff0c;AIGC 话题火爆 AI 技术人的朋友圈。由于深度学习模型不断完善、开源模式推动&#xff0c;AIGC 的迭代速度呈爆发式发展。据 Gartner 发布的 2022 年需要探索的重要战略技术趋势显示&#xff0c;生成式 AI 是其中引人注目的人工智…

uniapp开发小程序-工作笔记

开发背景 公司开始安排本人开发微信小程序&#xff0c;于是乎研究了一点关于uniapp的api和注意的点。仅仅是个人笔记…可能有错误&#xff0c;希望各位指出。 uniapp开发小程序 应用生命周期 onLaunch 初始化完成时 只触发一次 onShow 后台进入前台 显示页面的时候 onHide 前台…

全志V853 NPU 转换部署 YOLO V5 模型

NPU 转换部署 YOLO V5 模型 本文以 YOLO v5s 模型为例&#xff0c;详述 ONNX 模型在 V853 平台的转换与部署的流程。 模型的准备 YOLO v5 目前开源于 Github&#xff0c;链接【GitHub - ultralytics/yolov5: YOLOv5 &#x1f680; in PyTorch > ONNX > CoreML > TF…

【Android App】实战项目之虚拟现实(VR)的全景相册(附源码和演示视频 可用于学习和大作业)

需要源码请点赞关注收藏后评论区留言私信~~~ 不管是绘画还是摄影&#xff0c;都是把三维的物体投影到平面上&#xff0c;其实仍旧呈现二维的模拟画面。 随着科技的发展&#xff0c;传统的成像手段越来越凸显出局限性&#xff0c;缘由在于人们需要一种更逼真更接近现实的技术&am…

基于有偏距离权值(Weighted cubic O-MOMS with warping)三次O-MOMS插值理论的图像超分辨重构研究-附Matlab程序

⭕⭕ 目 录 ⭕⭕✳️ 一、图像超分辨率重构原理✳️ 二、三次O-MOMS插值重构理论与实验分析✳️ 2.1 三次O-MOMS(Cubic O-MOMS)插值理论与实验验证✳️ 2.2 有偏距离三次O-MOMS插值重构理论与实验验证✳️ 2.3 权重三次O-MOMS插值理论与实验验证✳️ 2.4 有偏距离权值三次O-MOM…

[附源码]Python计算机毕业设计Django茶叶销售微信小程序

项目运行 环境配置&#xff1a; Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术&#xff1a; django python Vue 等等组成&#xff0c;B/S模式 pychram管理等等。 环境需要 1.运行环境&#xff1a;最好是python3.7.7&#xff0c;…

Hive 查看和修改 tez 容器的资源

1. 查看当前的配置 1.1 进入 AppMaster 或 History 进入运行中&#xff0c;或者运行完作业对应的 “Tracking URL”。以下示例是已经运行完的 job。 1.2 进入 tez-ui 进入 tez-ui 之后&#xff0c;点击 Configurations 1.3 查看配置 输入要查询的配置项&#xff0c;点击…