当前位置: 首页 > news >正文

增加nginx配置文件(conf.d), 管理多个项目

1.切换到nginx目录下, 新建conf.d文件夹
mkdir conf.d

2.赋予conf.d权限
chmod 777 conf.d
 3.进入conf.d, 编辑conf文件
vim zc_travel.conf

server { listen 13101; server_name localhost;location / {root  /home/baoxin/app/web/insight-radar-rcfx-pre/html_dev;index  index.html index.htm;try_files $uri $uri/ /index.html;}location /tag/ {proxy_pass http://192.168.1.107:8090/xinpeople-base/;}location /images/ {alias /home/baoxin/app/rcfx/photo/;}   }

上述Nginx配置文件定义了一个服务器块(server),用于配置Nginx如何处理来自客户端的请求。以下是配置的具体解释:

  • 监听端口和服务器名称
    • listen 13101;:指定Nginx监听的端口号为13101。
    • server_name localhost;:指定该服务器块适用于名为localhost的主机。
  • 根路径配置 (location /)
    • root /home/baoxin/app/web/insight-radar-rcfx-pre/html_dev;:设置Web根目录,所有对/路径的请求将从这个目录下查找资源。
    • index index.html index.htm;:指定默认索引文件,当访问一个目录时,Nginx会尝试加载这些文件。
    • try_files $uri $uri/ /index.html;:尝试按顺序匹配文件:
      • $uri:尝试直接匹配请求的URI。
      • $uri/:如果URI是目录,则尝试访问该目录下的索引文件。
      • /index.html:如果前两者都未找到,则返回/index.html,这通常用于单页应用(SPA)的路由。
  • 代理转发配置 (location /tag/)
    • proxy_pass http://192.168.1.107:8090/xinpeople-base/;:对于以/tag/开头的请求,将其转发到http://192.168.1.107:8090/xinpeople-base/,实现反向代理功能。
  • 图片路径别名配置 (location /images/)
    • alias /home/baoxin/app/rcfx/photo/;:对于以/images/开头的请求,实际从/home/baoxin/app/rcfx/photo/目录中查找资源,而不是基于根目录。

总结来说,这段配置主要用于:

  • 监听13101端口并处理来自localhost的请求。
  • 提供静态文件服务,特别是HTML页面和图片。
  • 对特定路径(如/tag/)进行反向代理,将请求转发给后端服务。
 4.在原来的配置文件/etc/nginx/conf/nginx.conf的http{}内末尾处加一句:
include /usr/local/nginx/conf.d/*.conf;
 5.重启nginx
./nginx -s reload
6.补充 

我们也可以在当前项目下创建conf文件,比如当前项目目录是/home/baoxin/app/web/insight-radar-rcfx-pre,我们的conf文件目录是/home/baoxin/app/web/insight-radar-rcfx-pre/nginx_rcfx.conf,之后我们通过ln -s指向/etc/nginx/conf.d/,是同样的效果

ln -s /home/baoxin/app/web/insight-radar-rcfx-pre/nginx_rcfx.conf /etc/nginx/conf.d/
  • ln -s:表示创建符号链接。-s 选项指定创建的是符号链接而不是硬链接。
  • /home/baoxin/app/web/insight-radar-rcfx-pre/nginx_rcfx.conf:这是源文件的路径,即你要链接到的目标文件。在这个例子中,它是Nginx配置文件的具体位置。
  • /etc/nginx/conf.d/:这是目标目录,即符号链接将被创建的位置。/etc/nginx/conf.d/ 是Nginx默认读取额外配置文件的目录。

具体作用
这条命令的作用是:

  • /etc/nginx/conf.d/ 目录下创建一个名为 nginx_rcfx.conf 的符号链接,该链接指向 /home/baoxin/app/web/insight-radar-rcfx-pre/nginx_rcfx.conf 文件。
  • 这样做的目的是让Nginx在启动或重新加载配置时能够自动读取并应用这个自定义的配置文件,而不需要直接修改Nginx主配置文件。

优点

  1. 灵活性:可以轻松地添加或移除配置文件,而不会影响其他配置。
  2. 管理方便:所有自定义配置文件都集中在一个目录中,便于管理和维护。
  3. 减少错误风险:避免直接编辑主配置文件带来的潜在风险。

注意事项

  • 权限问题:确保你有足够的权限来创建符号链接和访问源文件。
  • 重复检查:确保目标目录中没有同名文件或链接,以避免覆盖现有文件。
  • 配置测试:在创建符号链接后,建议使用 nginx -t 测试配置文件的正确性,以确保Nginx能正常加载新配置。

我们通过 ln -s创建符号链接后,可以看到在config.d目录下出现了文件,点击可以跳转到对应的文件路径

点击文件即可到达文件的位置

 

7.  Nginx配置常用指令
7.1. alias
  • 作用:指定一个路径别名。
  • 语法:alias path;
  • 说明:当请求匹配到某个location时,实际从指定的文件系统路径中查找资源,而不是基于根目录。例如:
  location /images/ {alias /home/baoxin/app/rcfx/photo/;}

 这意味着对/images/的请求将从/home/baoxin/app/rcfx/photo/目录中查找资源。

7.2. proxy_pass
  • 作用:将请求转发给后端服务器。
  • 语法:proxy_pass URL;
  • 说明:用于实现反向代理,将请求转发到指定的后端服务器。例如:
  location /tag/ {proxy_pass http://192.168.1.107:8090/xinpeople-base/;}

 这意味着对/tag/的请求将被转发到http://192.168.1.107:8090/xinpeople-base/

 7.3. root
  • 作用:设置Web根目录。
  • 语法:root path;
  • 说明:指定所有对当前location的请求将从这个目录下查找资源。例如:
  location / {root /home/baoxin/app/web/insight-radar-rcfx-pre/html_dev;}

这意味着对/的请求将从/home/baoxin/app/web/insight-radar-rcfx-pre/html_dev目录中查找资源。 

7.4. index
  • 作用:指定默认索引文件。
  • 语法:index file1 [file2 ...];
  • 说明:当访问一个目录时,Nginx会尝试加载这些文件。例如:
  index index.html index.htm;

这意味着当访问一个目录时,Nginx会依次尝试加载index.htmlindex.htm文件。

7.5. try_files
  • 作用:尝试按顺序匹配文件。
  • 语法:try_files file1 [file2 ...] fallback;
  • 说明:按顺序尝试匹配文件,如果都未找到,则返回最后一个参数作为回退。例如
  try_files $uri $uri/ /index.html;

 这意味着:

  • 先尝试直接匹配请求的URI($uri)。
  • 如果是目录,则尝试访问该目录下的索引文件($uri/)。
  • 如果前两者都未找到,则返回/index.html,这通常用于单页应用(SPA)的路由。
7.6. rewrite
  • 作用:重写URL。
  • 语法:rewrite regex replacement [flag];
  • 说明:根据正则表达式重写URL。例如: 
rewrite ^/old/(.*)$ /new/$1 permanent;
7.7. location
  • 作用:定义位置块。
  • 语法:location [=|~|~*|^~] pattern { ... }
  • 说明:根据请求的URL模式匹配不同的处理逻辑。例如: 
  location /api/ {proxy_pass http://backend_api;}
 7.8. add_header
  • 作用:添加响应头。
  • 语法:add_header name value;
  • 说明:在响应中添加自定义HTTP头。例如:
  add_header X-Frame-Options SAMEORIGIN;
7. 9. error_page
  • 作用:定义错误页面。
  • 语法:error_page code [code ...] [=[] uri | @named_location;
  • 说明:指定特定HTTP状态码对应的错误页面。例如:
error_page 404 /custom_404.html;
7.10. gzip
  • 作用:启用Gzip压缩。
  • 语法:gzip on | off;
  • 说明:启用或禁用Gzip压缩以减少传输数据量。例如:
gzip on;

 通过这些指令,可以灵活地配置Nginx以满足各种需求,包括静态文件服务、反向代理、URL重写、性能优化等。

相关文章:

增加nginx配置文件(conf.d), 管理多个项目

1.切换到nginx目录下, 新建conf.d文件夹 mkdir conf.d 2.赋予conf.d权限 chmod 777 conf.d 3.进入conf.d, 编辑conf文件 vim zc_travel.conf server { listen 13101; server_name localhost;location / {root /home/baoxin/app/web/insight-radar-rcfx-pre/html_dev;index …...

PostgreSQL编译安装教程

下载安装 1.在家目录创建一个文件夹放下载安装包 mkdir softwarecd software 2.下载文件压缩包 wget https://ftp.postgresql.org/pub/source/v16.0/postgresql-16.0.tar.gz 3.解压 tar -xzvf postgresql-16.0.tar.gz 4.编译 在software/postgresql-16.0下 cd software…...

【提审】Android包提审报权限问题

问题:华为应用市场审核不通过 平台审核检测详情: 日志: 自检工具:frida-server【Unity&Android】安卓app自测应用隐私相关获取和申请权限_apk 隐私合规 自测-CSDN博客 参考资料:Unity启动时获取了android_id等设…...

xdoj 数字个数统计

1-2 数字个数统计 2 时间限制&#xff1a; 1S 题目描述&#xff1a; 一个正整数 n&#xff08;1<n<1000)&#xff0c;在区间[n,n2 ]&#xff08;含端点&#xff09;内统计奇数个数、 偶数个数、能被 4 整除且不能被 3 整除的数字个数&#xff0c;并求出各统计数字两两…...

空天地遥感数据识别与计算--数据分析如何助力农林牧渔、城市发展、地质灾害监测等行业革新

在科技飞速发展的时代&#xff0c;遥感数据的精准分析已经成为推动各行业智能决策的关键工具。从无人机监测农田到卫星数据支持气候研究&#xff0c;空天地遥感数据正以前所未有的方式为科研和商业带来深刻变革。然而&#xff0c;对于许多专业人士而言&#xff0c;如何高效地处…...

Git:查看分支、创建分支、合并分支

一、查看分支 查看的git命令如下&#xff1a; git branch # 列出本地已经存在的分支&#xff0c;并且当前分支会用*标记 git branch -r # 查看远程版本库的分支列表 git branch -a # 查看所有分支列表&#xff08;包括本地和远程&#xff0c;remotes/开头的表示远程分支&…...

联合目标检测与图像分类提升数据不平衡场景下的准确率

联合目标检测与图像分类提升数据不平衡场景下的准确率 在一些数据不平衡的场景下&#xff0c;使用单一的目标检测模型很难达到99%的准确率。为了优化这一问题&#xff0c;适当将其拆解为目标检测模型和图像分类模型的组合&#xff0c;可以更有效地控制最终效果&#xff0c;尤其…...

Git的简介

文章目录 一.Git是什么二.核心概念三.工作流程四.Git的优势 下载Git 推荐官网下载 官网地址 一.Git是什么 Git是一个分布式版本控制系统&#xff0c;用于跟踪文件的变化并协调多人对同一项目的开发工作。它就像是一个时光机器&#xff0c;能够记录文件在不同时间点的状态&…...

麒麟操作系统服务架构保姆级教程(四)NGINX中间件

如果你想拥有你从未拥有过的东西&#xff0c;那么你必须去做你从未做过的事情 想要在网页上访问到代码那么就需要用到应用服务类中间件&#xff0c;国外的有Nginx&#xff0c;Tomcat等&#xff0c;国内的有金蝶web&#xff0c;东方通的服务中间件&#xff08;Tongweb&#xff0…...

Glide 自定义圆角、铺满FitXY

在 Android 开发中&#xff0c;使用 Glide 来加载图片时&#xff0c;有时需要对图片进行特定的处理&#xff0c;比如设置圆角或者使图片完全填充到一个视图中&#xff08;类似于 ImageView 的 scaleType 中的 FitXY&#xff09;。以下是如何使用 Glide 来实现这些自定义需求的处…...

蓝牙协议——音乐启停控制

手机播放音乐 手机暂停音乐 耳机播放音乐 耳机暂停音乐...

Krita安装krita-ai-diffusion工具搭建comfyui报错没有ComfyUI_IPAdapter_plus解决办法

我们在使用Kirta安装krita-ai-diffusion工具之后搭建comfyui环境需要安装很多扩展文件。 一般正常安装都可以使用了。 但是有一个插件很特别,无论你安装多少遍都会显示缺失,是什么插件这么难搞定呢? 没错,就是我们的ComfyUI_IPAdapter_plus插件。 就像下图一样: 那么怎…...

四相机设计实现全向视觉感知的开源空中机器人无人机

开源空中机器人 基于深度学习的OmniNxt全向视觉算法OAK-4p-New 全景硬件同步相机 机器人的纯视觉避障定位建图一直是个难题&#xff1a; 系统实现复杂 纯视觉稳定性不高 很难选到实用的视觉传感器 为此多数厂家还是采用激光雷达的定位方案。 OAK-4p-New 为了弥合这一差距…...

LightGBM分类算法在医疗数据挖掘中的深度探索与应用创新(上)

一、引言 1.1 医疗数据挖掘的重要性与挑战 在当今数字化医疗时代,医疗数据呈爆炸式增长,这些数据蕴含着丰富的信息,对医疗决策具有极为重要的意义。通过对医疗数据的深入挖掘,可以发现潜在的疾病模式、治疗效果关联以及患者的健康风险因素,从而为精准医疗、个性化治疗方…...

JVM(Java虚拟机)的组成部分详解

摘要&#xff1a; JVM (Java Virtual Machine) 是一个抽象计算模型&#xff0c;它使Java程序可以在任何支持JVM的操作系统上运行&#xff0c;而无需考虑底层硬件架构。本文将深入探讨JVM的内部结构和工作机制&#xff0c;包括类加载器、运行时数据区、执行引擎以及内存管理等关…...

jsp中的四个域对象(Spring MVC)

在Spring MVC中&#xff0c;Model中的数据会被自动放入到请求域&#xff08;Request Scope&#xff09;中。也就是说&#xff0c;当我们在控制器中使用model.addAttribute()时&#xff0c;这些属性会被放入到HttpServletRequest对象的属性中。 让我们通过代码来详细解释&#…...

计算机基础知识复习12.24

http和https有那些区别 http是超文本传输协议&#xff0c;信息是明文传输&#xff0c;存在安全风险的问题&#xff0c;https则解决http不安全的缺点&#xff0c;在TCP和HTTP网络层之间加入了SSL/TLS安全协议&#xff0c;使得报文能够加密传输 http连接建立相对简单&#xff0…...

如何使用vscode解决git冲突

在使用VSCode时&#xff0c;遇到Git冲突是很常见的情况。Git冲突是指当多个人同时修改同一个文件的同一行或相邻行时&#xff0c;Git无法自动决定应该保留哪一个修改&#xff0c;需要手动解决这个冲突。 要解决Git冲突&#xff0c;可以按照以下步骤操作&#xff1a; 1. 打开V…...

告别卡顿:CasaOS轻NAS设备安装Gopeed打造高效下载环境

文章目录 前言1. 更新应用中心2.Gopeed安装与配置3. 本地下载测试4. 安装内网穿透工具5. 配置公网地址6. 配置固定公网地址 前言 无论你是需要大量文件传输的专业人士&#xff0c;还是只是想快速下载电影或音乐的普通用户&#xff0c;都会使用到下载工具。如果你对现有的下载工…...

Java 重写(Override)与重载(Overload)

重写 (Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写&#xff01;返回值和形参都不能改变。即外壳不变&#xff0c;核心重写&#xff01; 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。…...

HDFS与HBase有什么关系?

1 、 HDFS 文件存储系统和 HBase 分布式数据库 HDFS 是 Hadoop 分布式文件系统。 HBase 的数据通常存储在 HDFS 上。 HDFS 为 HBase 提供了高可靠性的底层存储支持。 Hbase 是 Hadoop database ,即 Hadoop 数据库。它是一个适合于非结构化数据存储的数据库, HBase 基于列的…...

CentOS7下的vsftpd服务器和客户端

目录 1、安装vsftpd服务器和ftp客户端&#xff1b; 2、配置vsftpd服务器&#xff0c;允许普通用户登录、下载、上传文件&#xff1b; 3、配置vsftpd服务器&#xff0c;允许anonymous用户登录、下载、上传文件&#xff1b; 4、配置vsftpd服务器&#xff0c;允许root用户登录…...

全网最详细Gradio教程系列10——Blocks:底层区块类(下)

全网最详细Gradio教程系列10——Blocks&#xff1a;底层区块类&#xff08;下&#xff09; 前言本篇摘要10. Blocks&#xff1a;底层区块类10.4 Blocks Layout&#xff1a;布局10.4.1 行与列1. Rows2. Columns 10.4.2 选项卡和折叠类10.4.3 重渲染.render()10.4.4 Group分组10.…...

嵌入式设备常用性能和内存调试指令

文章目录 嵌入式设备常用性能和内存调试指令内存问题分析性能测试android设备通过NDK 使用SimplePerf 抓取火焰图嵌入式linux抓取特定进程的perf火焰图 杂记 嵌入式设备常用性能和内存调试指令 内存问题分析 安装valgrind&#xff0c;按照如下指令执行应用程序&#xff1a; …...

数据库系统原理:数据恢复与备份策略

3.1可行性分析 开发者在进行开发系统之前&#xff0c;都需要进行可行性分析&#xff0c;保证该系统能够被成功开发出来。 3.1.1技术可行性 开发该《数据库系统原理》课程平台所采用的技术是vue和MYSQL数据库。计算机专业的学生在学校期间已经比较系统的学习了很多编程方面的知识…...

C++软件设计模式之装饰器模式

装饰器模式&#xff08;Decorator Pattern&#xff09;是C软件设计模式中的一种结构型设计模式&#xff0c;主要用于解决在不改变现有对象结构的情况下动态地给对象添加新功能的问题。通过使用装饰器模式&#xff0c;可以在运行时为对象添加新的行为&#xff0c;而不需要修改其…...

fpga系列 HDL:Quartus II PLL (Phase-Locked Loop) IP核 (Quartus II 18.0)

在 Quartus II 中使用 PLL (Phase-Locked Loop) 模块来将输入时钟分频或倍频&#xff0c;并生成多个相位偏移或频率不同的时钟信号&#xff1a; 1. 生成 PLL 模块 在 Quartus II 中&#xff1a; 打开 IP Components。 file:///C:/intelFPGA_lite/18.0/quartus/common/help/w…...

Spring AOP 中记录日志

Spring AOP 中记录日志 使用 AOP 和 Spring 提供的 RequestContextHolder 在通知中记录 HTTP 请求相关日志。以下是进阶添加日志功能的完整例子和说明。 完整示例 1. 切面类实现 Aspect Component public class LogAspect {Around("annotation(log)") // 拦截所有…...

udp tcp协议

文章目录 1. UDP协议1.1 端口号1.2 UDP协议格式1.3 UDP特性1.4 报文的封装 2. TCP协议2.1 TCP协议格式2.2 TCP策略2.2.1 确认应答机制(ACK)序号与确认序号6个标志位序号的理解 2.2.2 超时重传机制2.2.3 连接管理机制三次握手四次挥手理解三次握手理解四次挥手 2.2.4 流量控制2.…...

C语言结构体详细讲解

文章目录 [TOC] 一、前言二、结构体2.1 结构体概念&#x1f388;2.2 结构体定义&#x1f389;2.3 结构体使用&#x1f397;️ 结尾 时间紧后面还有一些知识点这周内补上&#xff0c; 理解理解&#xff01;(❁◡❁) 一、前言 在学习结构体之前,讲讲为什么会专门写一章博客来分享…...