news 2026/7/6 4:05:35

Nginx进行配置文件拆分(以windows解压版为例)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Nginx进行配置文件拆分(以windows解压版为例)

Nginx压缩包解压后,只有一个默认的nginx.conf配置文件,可以通过下面的配置方法简易拆分成多个配置,提高可读性和可维护性。

原理简介
了解过 Nginx 的应该知道,配置文件的http块里面是由一个个server块组成的。

每个server 块都含有server_name配置,是用来识别请求的标识。当 Nginx 接收到网络请求时,会读取请求的域名或IP,并去匹配各个 server 块里的 server_name,匹配成功就由该块负责处理。

因为有这个机制,多个项目可以同时使用 80 端口,只要请求的域名不同,就能分流到对应项目。可以把每个server块单独写成一个 .conf 文件,通过include统一引入

初始目录结构:

一、新建 conf.d 文件夹

在Nginx 根目录下,新建一个名为 conf.d 的文件夹(名称不限,确保和include一致就行),用于存放拆分出来的配置文件。

二、修改主配置文件

替换conf/nginx.conf为以下配置。

worker_processes auto; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; sendfile on; # 开启高性能文件传输 keepalive_timeout 65; # 保持连接不中断的超时时间(秒) gzip on; # 开启网页内容压缩 gzip_types text/plain text/css application/json application/javascript text/xml; # 允许压缩的文件类型 include ../conf.d/*.conf; # 加载子配置文件 }

该配置只负责一些全局的配置,比如进程数、连接上限、和压缩规则等,并通过include引入/conf.d下的配置文件

三、在conf.d中拆分具体应用

根据需要创建独立的 .conf 文件。

默认配置:保持原始欢迎页

创建/conf.d/default.conf, 写入以下内容

server { listen 80 default_server; server_name localhost; charset utf-8; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } }

注意:这里有个default_server配置,表示如果请求的域名没匹配到任何文件的 server_name,就由这个默认服务来处理

配置A(可选):代理前端项目

创建conf.d/webapp.conf

server { listen 80; server_name www.mysite.com; # 写你配置的域名 # server_name 127.0.0.1; # 若没有域名,可以用本地ip location / { root C:/project/dist; # 前端打包文件存放的绝对路径(注意用正斜杠 /) index index.html index.htm; try_files $uri $uri/ /index.html; # 支持 Vue/React 的 history 路由模式 } }
配置B(可选):反向代理

创建conf.d/springboot.conf
以下以代理spirngboot后端为例

server { listen 80; server_name spring.dev.mysite.com; # 写你配置的域名 # server_name 127.0.0.2; # 若没有域名,可以用本地ip,确保不会和其他配置文件冲突 client_max_body_size 50m; # 文件上传大小限制 location / { proxy_pass http://127.0.0.1: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根目录,打开cmd,执行以下命令检查配置文件是否正确。

.\nginx-t

如下所示即为配置成功:

如果nginx没有启动过,双击根目录的nginx.exe启动即可。
若之前已经启动且正在运行中,则执行以下命令重新加载配置。

.\nginx-sreload

如果按前面添加了default.conf配置,则访问localhost,将看到欢迎页:

再自行访问你的其他的配置项进行测试。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/6 4:05:26

网上的若干算法都太复杂了,现提出包氏算法如下:

先for循环把arr1中的元素入栈,并在每次遍历时,检索arr2中可以pop的元素。如果循环结束,而stack中还有元素,就说明arr2序列不是pop序列。static bool JudgeSequenceIsPossible(int[] arr1, int[] arr2){Stack stack new Stack();f…

作者头像 李华
网站建设 2026/7/6 4:03:20

LangChain FewShotPromptTemplate少样本应用实战

里有个容易踩的坑:创建 FewShotPromptTemplate 的时候,examples 和 example_selector 这两个参数是互斥的,必须填其中一个,不然代码直接报错。绝大多数情况下,我们直接用 examples 参数把准备好的示例数据传进去就行。…

作者头像 李华
网站建设 2026/7/6 4:03:04

硬件版【Cursor】?aily blockly IDE尝鲜封神,实战硬伤尽显

步骤 1:安装启动下载好安装包,一路 “下一步”,几分钟就装好了。打开 IDE 的瞬间,我直接被清爽的界面戳中了:左边是全平台开发板列表,Arduino、ESP32、STM32、树莓派 Pico… 主流板子基本全覆盖。中间是图形…

作者头像 李华
网站建设 2026/7/6 3:53:43

商用轨道插座怎么选更划算 各品牌性价比盘点帮你避坑少花冤枉钱

开过咖啡店、装过联合办公、做过商业展厅的朋友都懂,配电布局绝对是装修前期最容易踩的坑:插座布少了,后期加设备要拖插排乱不说,还容易过载跳闸;布多了,闲置的插座丑还浪费钱,换个业态还要砸墙…

作者头像 李华