配置Nginx解决跨域问题

news2024/12/23 7:26:08

Nginx 中将前端请求中的所有以 “/apiUrl” 开头的路径代理到 http://192.12.200.101:9813
例如:
/apiUrl/login ===> http://192.12.200.101:9813/login

配置nginx环境

  • 进入Nginx 的配置文件编辑界面:
sudo nano /etc/nginx/conf.d/default.conf
  • 开始编辑 default.conf
server {
    listen       80;
    server_name  localhost;
    # 这里配置,配置如下
    location /apiUrl/ {
        rewrite ^/apiUrl(/.*)$ $1 break; # 路径重写
        proxy_pass http://192.12.200.101:9813; # 代理请求转发的目标地址
        add_header Access-Control-Allow-Origin *; # 表示允许任何域的请求访问资源。
        add_header Access-Control-Allow-Methods *;# 定义允许跨域请求的 HTTP 方法
        proxy_set_header Content-Type "application/x-www-form-urlencoded; charset=UTF-8"; # 设置代理请求时的 HTTP 请求头部信息。
     }

    #charset koi8-r;
    access_log  /var/log/nginx/host.access.log  main;
    error_log  /var/log/nginx/error.log  error;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
        try_files $uri $uri/ /index.html;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }
}

纯净版:这里复制

location /apiUrl/ {
        rewrite ^/apiUrl(/.*)$ $1 break;
        proxy_pass http://192.12.200.101:9813;
        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Methods *;
        proxy_set_header Content-Type "application/x-www-form-urlencoded; charset=UTF-8";
     }

注意:
如果想/apiUrl/login ===> http://192.12.200.101:9813/apiUrl/login
在这里插入图片描述
这里路径匹配规则 /apiUrl/,如下图:
在这里插入图片描述
/apiUrl ----匹配到的路径----> /apiUrl,/apiUrl1,/apiUrl2
/apiUrl/ ----匹配到的路径–只有 /apiUrl

允许多个信任域名进行跨域访问,你可以在 Access-Control-Allow-Origin 头部中设置多个域名:
多个域名时:双引号或单引号内,使用逗号隔开;

add_header Access-Control-Allow-Origin "https://your-allowed-domain-1.com, https://your-allowed-domain-2.com, https://your-allowed-domain-3.com";

自定义允许跨域请求的 HTTP 方法:

add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS, DELETE';

nginx官方文档–rewrite

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

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

相关文章

7.26 SpringBoot项目实战【还书】

文章目录 前言一、编写控制器二、编写服务层三、Git提交前言 本文是项目实战 业务接口 的最后一篇,上文 曾说过【还书】的 入口是【我的借阅记录】,因为【还书】是基于一次借阅记录而言,另外在4.2 数据库设计 曾分析过【还书】的业务场景,需要执行两步操作: 更新【借阅记…

汽车线束行业MES的解决方案

MES系统在汽车线束生产全流程中扮演着重要角色。它通过采用自动化、信息化、以及集成化的方式,实现了对整个生产过程的精细化管理。在复杂且严格的汽车零部件制造业中,MES系统无疑为高效、高质量的生产提供了坚实保障。 万界星空科技线束行业MES系统主要…

【开源项目】WPF 扩展 -- 多画面视频渲染组件

目录 1、项目介绍 2、组件集成 2.1 下载地址 2.2 添加依赖 3、使用示例 3.1 启动动画 3.2 视频渲染 3.3 效果展示 4、项目地址 1、项目介绍 Com.Gitusme.Net.Extensiones.Wpf 是一款 Wpf 扩展组件。基于.Net Core 3.1 开发,当前是第一个发布版本 1.0.0&am…

(3)kylin系统部署weblogic项目

一、jdk迁移 1、拷贝成功后要配置环境变量 vi /etc/profile 将jdk的目录添加进去 2、将jdk安装目录拷贝后权限会发生变化, 要对jdk下bin目录中的所有文件修改权限: chmod x ./* 回车即可 ----------------------------- 环境变量 export …

【漏洞复现】红帆OA iorepsavexml.aspx文件上传漏洞

漏洞描述 广州红帆科技深耕医疗行业20余年,专注医院行政管控,与企业微信、阿里钉钉全方位结合,推出web移动一体化办公解决方案——iOffice20(医微云)。提供行政办公、专业科室应用、决策辅助等信息化工具,采取平台化管理模式,取代医疗机构过往多系统分散式管理,实现医…

Kafka本地安装⭐️(Windows)并测试生产消息以及消费消息的可用性

2023.12.17 天气晴 温度较低 十点半,不是不想起实在是阳光浴太nice了日常三连,喂,刷,肝刷会儿博客,看会儿设计模式冷冷冷 进被窝 刷视频 睡觉看看kafka的本地部署 》》实践》》成功写会儿博客&#xff0c…

Qt for Android 程序编译报错

环境 系统:Ubuntu Qt 版本:Qt5.15.2 JDK版本:jdk-17.0.9 编译错误说明 Qt 创建了一个简单的界面程序,编辑就错误了. 错误信息: Generating Android PackageInput file: /home/xuguijun/Desktop/build-androidTest-Android_Q…

通过 Dropout 增强深度学习模型:对抗过度拟合的策略

一、介绍 Dropout 是深度学习中用于防止过度拟合的正则化技术。这个概念是由 Hinton 等人提出的。在 2012 年的一篇论文中,它已成为神经网络领域的主要技术,特别是在训练深度网络方面。 在追求稳健的深度学习模型的过程中,dropout 不仅作为一…

C语言—每日选择题—Day50

一天一天的更新,也是达到50天了,精选的题有250道,博主累计做了不下500道选择题,最喜欢的题型就是指针和数组之间的计算呀,不知道关注我的小伙伴是不是一直在坚持呢?文末有投票,大家可以投票让博…

GradNorm理解

主要参考这一篇,GradNorm:Gradient Normalization for Adaptive Loss Balancing in Deep Multitask Networks,梯度归一化_grad norm-CSDN博客 14:20-15:30 提前需要理解的概念 损失函数,衡量ypred与ytruth的差距。 Grad Loss定…

《Linux C编程实战》笔记:文件的移动和删除

本节只有两个函数。 rename函数 #include <stdio.h> int rename (const char *oldpath, const char *newpath); rename会将参数oldpath所指定的文件名称改为参数newpath所指定的文件名称&#xff0c;若newpath所指定的文件已存在&#xff0c;则原文件会被删除&#xf…

Mac安装软件显示文件已损坏处理方法

今天安装软件&#xff0c;突然遇到了文件已损坏&#xff0c;扔到废纸篓的情况&#xff0c;于是搜索了下解决办法&#xff0c;跟大家分享下&#xff0c;希望对你有所帮助 一、检查安全性设置 打开【设置】-【隐私与安全】&#xff0c;下拉找到安全性&#xff0c;将安全性更改为…

深度学习记录--参数与超参数

什么是超参数 在深度学习的神经网络图中&#xff0c;有一堆参数&#xff0c;这些参数分成了普通参数和特殊参数&#xff0c;其中特殊参数往往被称为超参数 超参数(hyper parameters),在某种程度上决定了普通的参数&#xff0c;并且是需要额外给出的 如下图 参数设定 对于超…

半导体设备之外延炉简述

半导体设备对整个半导体行业起着重要的支撑作用。因半导体制造工艺复杂&#xff0c;各个环节需要的设备也不同&#xff0c;从流程工序分类来看&#xff0c;半导体设备主要可分为晶圆制造设备&#xff08;前道工序&#xff09;、封装测试设备&#xff08;后道工序&#xff09;等…

【TB作品】51单片机读取重量和液位,OLED显示

代码打开下载&#xff1a; http://dt4.8tupian.net/2/28880a64b6666.pg3这段代码是为微控制器编写的&#xff0c;可能是基于8051架构&#xff0c;使用Keil C51编译器。该代码结合了OLED显示器、超声波距离传感器和基于HX711的称重传感器的功能。以下是主要组件及其功能的详细说…

常见Appium相关问题及解决方案

问题1&#xff1a;adb检测不到设备 解决&#xff1a; 1.检查手机驱动是否安装&#xff08;win10系统不需要&#xff09;&#xff0c;去官网下载手机驱动或者电脑下载手机助手来辅助安装手机驱动&#xff0c;安装完成后卸载手机助手&#xff08;防止接入手机时抢adb端口造成干…

【Linux】查看目录和更改目录

概览 常见一些目录命令如下&#xff1a; pwd&#xff1a;print working directory的缩写&#xff0c;打印出当前工作目录名 。ls&#xff1a;list的缩写&#xff0c;列出目录内容。file&#xff1a;确定文件类型。less&#xff1a;浏览文件内容。cd&#xff1a;change direct…

低代码发展现状调研和思考

低代码开发是近年来迅速崛起的软件开发方法&#xff0c;让编写应用程序变得更快、更简单。有人说它是美味的膳食&#xff0c;让开发过程高效而满足&#xff0c;但也有人质疑它是垃圾食品&#xff0c;缺乏定制性与深度。你认为低代码到底是美味的膳食还是垃圾食品呢&#xff0c;…

PMP项目管理 - 风险管理

系列文章目录 PMP项目管理 - 质量管理 PMP项目管理 - 采购管理 PMP项目管理 - 资源管理 PMP项目管理 - 风险管理 现在的一切都是为将来的梦想编织翅膀&#xff0c;让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in…

easy贪吃蛇

之前承诺给出一个贪吃蛇项目。 1.EasyX库认知 有关EasyX库的相关信息&#xff0c;您可以看一下官方的文档&#xff1a;EasyX官方文档。 这里我做几点总结&#xff1a; EasyX库就和名字一样&#xff0c;可以让用户调用一些简单的函数来绘制图像和几何图形利用EasyX库可以制作…