nginx配置文件的内容解释和简化方案
文章目录
- 配置文件内容理解
- 配置文件精简
- nginx.conf
- app1.conf
配置文件内容理解
events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;client_max_body_size 50m;client_body_buffer_size 10m; client_header_timeout 1m;client_body_timeout 1m;gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_comp_level 4;gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;gzip_vary on;
server {listen 80;server_name www.xxx.website;location / { root /usr/local/blog;index index.html index.htm; try_files $uri $uri/ /index.html; }location ^~ /api/ { proxy_pass http://xxx.xxx.xxx.xxxp:8080/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}server {listen 80;server_name admin.xxx.website;location / { root /usr/local/admin;index index.html index.htm; try_files $uri $uri/ /index.html; }location ^~ /api/ { proxy_pass http://xxx.xxx.xxx.xxx:8080/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}
}
- Nginx 配置文件包含两个不同子域(www.xxx.website 和 admin.xxx.website)的应用配置的 Nginx 服务器。
events {worker_connections 1024;
}http {# ....
}
- events 部分:配置 Nginx 服务器的事件处理, worker_connections 指定了每个 worker 进程的最大连接数为 1024。
- http 部分:定义 HTTP 协议相关的配置。
http {include mime.types; # 包含了 MIME 类型的配置文件,用于识别不同类型的文件default_type application/octet-stream; # 设置默认的 MIME 类型为二进制流sendfile on; # 启用 sendfile 指令,用于高效地传输文件keepalive_timeout 65; # 设置 HTTP keep-alive 连接的超时时间为 65 秒client_max_body_size 50m; # 设置客户端请求体的最大大小为 50MBclient_body_buffer_size 10m; # 设置客户端请求体缓冲区大小为10MBclient_header_timeout 1m; # 设置客户端请求头的超时时间为1分钟client_body_timeout 1m; # 设置客户端请求体的超时时间为1分钟# gzip 相关配置用于启用和配置 Gzip 压缩gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_comp_level 4;gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;gzip_vary on;# ...
}
- server 部分:定义两个虚拟主机(server)
server {listen 80; # 指定 Nginx 监听的端口为 80server_name www.xxx.website; # 指定服务器的域名# 配置 Nginx 记录访问日志和错误日志access_log /var/log/nginx/access.log;error_log /var/log/nginx/error.log;# 定义静态文件的根目录和默认文件location / { root /usr/local/blog;index index.html index.htm;# 使用 try_files 指令,如果请求的文件不存在,则会重定向到 /index.html try_files $uri $uri/ /index.html; }# 代理到后端 API 服务器 并设置了一些代理请求头,如 Host、X-Real-IP、X-Forwarded-For location ^~ /api/ { proxy_pass http://xxx.xxx.xxx.xxxp:8080/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}}
配置文件精简
- Nginx的通用配置放到nginx.conf文件中,而站点特定的配置则被放到了单独的文件中。这种方式使得配置文件更易读和维护。
- 以下是一个简化的nginx.conf示例,其中包含了一个简单站点的配置:
nginx.conf
worker_processes auto;events {worker_connections 1024;
}http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;client_max_body_size 50m;client_body_buffer_size 10m; client_header_timeout 1m;client_body_timeout 1m;gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_comp_level 4;gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;gzip_vary on;include /etc/nginx/sites-enabled/*; # 包含站点配置文件
}
- 然后,在/etc/nginx/sites-enabled/目录下,创建一个单独的配置文件,比如app1,包含你之前提供的服务器配置:
/etc/nginx/sites-enabled/app1
app1.conf
server {listen 80;server_name xxx;access_log /var/log/nginx/xxx_access.log;error_log /var/log/nginx/xxx_error.log;location / { root /usr/local/carehome_vue;index index.html index.htm;try_files $uri $uri/ /index.html;}location ^~ /api/ { proxy_pass http://xxx:8080/;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;}
}
相关文章:
nginx配置文件的内容解释和简化方案
文章目录 配置文件内容理解配置文件精简nginx.confapp1.conf 配置文件内容理解 events {worker_connections 1024; }http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;client_max_body_size 50m;client…...
Java设计模式之访问者模式(Visitor Pattern)
访问者模式(Visitor Pattern)是一种行为型设计模式,它允许在不修改现有对象结构的情况下定义新的操作。该模式将操作封装在一个访问者对象中,使得可以在不改变被访问对象的类的前提下,通过访问者对象对被访问对象进行新…...
others-AppLovin广告接入
title: others-AppLovin广告接入 categories: Others tags: [广告, AppLovin] date: 2023-10-20 10:07:01 comments: false mathjax: true toc: true others-AppLovin广告接入 前篇 官方 - https://www.applovin.com/ Android sdk - https://github.com/AppLovin/AppLovin-MAX…...
ESP32集成开发环境Espressif-IDE安装 – Windows
陈拓 2023/10/15-2023/10/16 1. 概述 Espressif IDE是一个基于Eclipse CDT的集成开发环境(IDE),用于使用ESP-IDF框架开发物联网应用程序。这是一个专门为ESP-IDF构建的独立定制IDE。Espressif IDE附带了IDF Eclipse插件、重要的Eclipse CDT插…...
python之if else语句介绍
python之if else语句介绍 在Python中,if和else是两种重要的控制流语句,它们用于根据特定的条件来执行不同的代码块。以下是它们的用法和详细介绍: 1)if语句 if语句用于在满足某种条件时执行特定的代码块。它的基本语法如下&#…...
Java版ORM最初雏形
经过一个晚上的加班,终于把ORM初步结构工程搭好了。工程依赖有点难用,编辑器提示比VS差很多。 首先LIS.Core创建一个最初的容器雏形,先能反射得到对象给ORM获得数据库驱动 然后ORM创建数据库驱动差异接口,不同数据库实现接口后配…...
黎曼几何与切空间之间的投影
公式: 从黎曼空间投影到切空间,其中P为黎曼均值,也是切空间的参考中心点,Pi是要投影到切空间的点。 从切空间投影回来,其中Si为切空间中的向量。 function Tcov CovToTan(cov,Mcov)Cm12 Mcov^(-1/2);X_new logm(Cm…...
【Tomcat】为Tomcat服务配置本地Apr库以提升性能
关于 apr 和 apr-util 对 Tomcat 服务的性能提升的说明: 要测APR给tomcat带来的好处最好的方法是在慢速网络上(模拟Internet),将Tomcat线程数开到300以上的水平,然后模拟一大堆并发请求。如果不配APR,基本…...
普通人在当前大环境下——少看宏观,多看具体
前言 宏观叙事,简而言之,就是从宏观把握历史社会的发展,寻找其中永恒的共性。我们大概听过此类的话:贸易战导致本地经济下滑、气候变化是因为过去几十年的工业发展、大环境不行导致不赚钱。此类叙事方式,身边人聊的甚欢,在媒体、社交圈、日常社群交流中,随处可见。以前…...
用echarts在vue2中实现3d饼图
先看效果,再看文章: 一、安装插件 3d的图不仅用到echarts,还用到了echarts-gl,因此都需要安装一下哦~ npm install echarts npm install echarts-gl2.0.9 //可以指定版本,也可不指定二、在main.js中引入 import * …...
低代码助力软件开发
低代码开发工具正在日益变得强大,它正不断弥合着前后端开发之间的差距。对于后端来说,基于低代码平台开发应用时,完全不用担心前端的打包、部署等问题,也不用学习各种框架(Vue、React、Angular等等)&#x…...
C嘎嘎之类和对象上
> 作者简介:დ旧言~,目前大二,现在学习Java,c,c,Python等 > 座右铭:松树千年终是朽,槿花一日自为荣。 > 目标:掌握类的引用和定义,熟悉类成员函数的…...
Vue 3使用 Iconify 作为图标库与图标离线加载的方法、 Icones 开源在线图标浏览库的使用
之前一直naive-ui搭配使用的是xicons,后来发现Iconify支持的图标合集更多,因此转而使用Iconify。 与FontAwesome不同的是,Iconify配合Icones相当于是一个合集,Iconify提供了快捷引入图标的方式,而Icones是一个大的图标…...
springboot+vue基于Spark的共享单车数据存储系统的设计与实现【内含源码+文档+部署教程】
博主介绍:✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久,选择我们就是选择放心、选择安心毕业✌ 🍅由于篇幅限制,想要获取完整文章或者源码,或者代做&am…...
如何使双核心的ESP32开启双核功能同时执行多任务
如何使双核心的ESP32开启双核功能同时执行多任务 简介查看ESP32当前哪一个内核在执行任务双核同时执行任务总结 简介 ESP32-WROOM-32模组内置两个低功耗 Xtensa 32-bit LX6 MCU,两个 CPU 核(core 0与core 1)可以被单独控制。可以在两个内核上…...
Node.js在Python中的应用实例解析
随着互联网的发展,数据爬取成为了获取信息的重要手段。本文将以豆瓣网为案例,通过技术问答的方式,介绍如何使用Node.js在Python中实现数据爬取,并提供详细的实现代码过程。 Node.js是一个基于Chrome V8引擎的JavaScript运行时环境…...
LC-2316. 统计无向图中无法互相到达点对数(DFS、并查集)
2316. 统计无向图中无法互相到达点对数 中等 给你一个整数 n ,表示一张 无向图 中有 n 个节点,编号为 0 到 n - 1 。同时给你一个二维整数数组 edges ,其中 edges[i] [ai, bi] 表示节点 ai 和 bi 之间有一条 无向 边。 请你返回 无法互相…...
git笔记 - 常用记录
第1阶段 - Git简介 什么是Git及其重要性?基本的Git概念和术语 仓库(Repository):也称为 repo,是存储代码和版本历史的地方。它可以是本地仓库(在本地计算机上)或远程仓库(在服务器…...
无纸化办公小程序数据交互、wxs的使用
前言 很多同志们再写小程序的过程中,不知道该怎么发起HTTP请求到后端,在Web环境中发起HTTPS请求是很常见的,但是微信小程序是腾讯内部的产品,不能直接打开一个外部的链接。例如,在微信小程序中不能直接打开www.taobao…...
Python之哈希表-哈希表原理
Python之哈希表-哈希表原理 集合Set 集合,简称集。由任意个元素构成的集体。高级语言都实现了这个非常重要的数据结构类型。Python中,它是可变的、无序的、不重复的元素的集合 初始化 set() -> new empty set objectset(iterable) -> new set …...
Keepalived VIP漂移后网络不通?可能是交换机ARP表没刷新!手把手教你配置garp_master_refresh
Keepalived VIP漂移故障排查:从ARP表刷新到高可用架构优化 那天凌晨三点,手机突然响起刺耳的告警铃声——核心业务VIP访问异常。作为值班运维,我瞬间清醒,抓起笔记本就开始排查。这是一次典型的主备切换后VIP不通故障,…...
Python新手避坑指南:从‘天天向上的力量’到‘蒙特卡洛求π’,这些作业题你真的理解了吗?
Python新手避坑指南:从"天天向上的力量"到"蒙特卡洛求π"的深度解析 1. 为什么这些经典练习题值得反复推敲? 当你第一次在Python123平台上遇到"天天向上的力量"这道题时,可能只是简单地用循环和条件语句完成了…...
oh-my-codex:基于命令行的个人代码片段管理器,提升开发效率
1. 项目概述与核心价值最近在整理个人知识库和代码片段时,发现了一个让我眼前一亮的开源项目:Yeachan-Heo/oh-my-codex。作为一个长期与代码打交道的开发者,我们都有过类似的痛点:辛辛苦苦写出来的、解决特定问题的代码片段&#…...
Strix AI 安全测试工具完整使用指南
Strix AI 安全测试工具完整使用指南 一、核心优势 Strix 是AI 驱动的开源安全测试工具,核心亮点: AI 自动识别漏洞,无需手动编写复杂测试规则 支持 Web 网站、本地代码、云端服务全场景扫描 提供命令行 终端图形界面 (TUI) 双模式 支持…...
nli-MiniLM2-L6-H768多场景应用:文本校验、问答验证、摘要评估一体化
nli-MiniLM2-L6-H768多场景应用:文本校验、问答验证、摘要评估一体化 1. 认识nli-MiniLM2-L6-H768 nli-MiniLM2-L6-H768是一款基于自然语言推理(NLI)技术的句子关系判断服务。这个轻量级模型(仅630MB)能够高效分析两个句子之间的逻辑关系,为各类文本处…...
使用Squad工具统一管理微服务本地开发环境:.NET开发者的效率利器
1. 项目概述与核心价值最近在梳理团队内部的知识库和工具链时,我又一次翻出了“bradygaster/squad”这个项目。这名字乍一看有点摸不着头脑,既不是某个知名框架,也不是一个热门的应用,但它却是我个人工具箱里一个非常趁手的“瑞士…...
LangChain API 接入:从注册到生产级应用的10分钟上手指南
一、前言LangChain API 接入:从注册到生产级应用的10分钟上手指南是大模型应用开发的核心场景。本文从LangChain和API出发,给出完整可落地的代码实现。二、快速上手2.1 环境准备pip install langchain langchain-openai2.2 基础调用from langchain_opena…...
UDA文本分类实战:从IMDB情感分析到BERT集成
UDA文本分类实战:从IMDB情感分析到BERT集成 【免费下载链接】uda Unsupervised Data Augmentation (UDA) 项目地址: https://gitcode.com/gh_mirrors/ud/uda Unsupervised Data Augmentation(UDA)是一种革命性的半监督学习方法&#x…...
写给做审批系统的你:状态和权限一旦没分层,后面一定越来越乱
Activiti/Flowable 工作流实战:业务状态和流程状态怎么保持一致?再讲清 RBAC 数据权限 工作流项目真正难的地方,往往不是“怎么发起流程”,而是“流程跑起来之后,状态别乱、权限别乱、数据别乱”。 这个项目里我能明显…...
港科夜闻|香港科大于THE亚洲大学排名2026位列第12位,彰显顶尖亚洲大学地位
关注并星标 每周阅读港科夜闻 建立新视野 开启新思维 1、在最新公布的2026年泰晤士高等教育(THE)亚洲大学排名中,香港科技大学位列亚洲第十二位,充分展现香港科大在蓬勃发展的亚洲高等教育界中站稳领先位置。作为一所扎根亚洲、放…...
