Nginx反向代理实现Vue跨域注意事项

1、通过搜索引擎访问Nginx官网——免费使用——NGINX开源版(免费下载)或者通过以下链接直接访问Nginx下载页面下载对应的版本(下载页面)。以下以1.24.0为例
在这里插入图片描述
2、修改nginx的配置文件,在conf文件夹下,文件名为nginx.conf;以下是我修改完的配置(在http的server项内):

		listen       5101;#需要监听的端口
        server_name  127.0.0.1;
        #charset koi8-r;
        charset utf-8;
        #access_log  logs/host.access.log  main;

        location /api { #尾加也可以斜杠"/",proxy_pass 的值同步修改
          proxy_pass              http://127.0.0.1:8968/api;#注意:使用代理地址时跟上面保持一致(/api)末尾不加斜杠"/"。
          proxy_set_header        Host 127.0.0.1;
          proxy_set_header        X-Real-IP $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }
        location / {  #使用"/"拦截全路径的时候记得放在最后。
            root   html; # html表示存放静态资源的文件夹,根据实际情况修改
            index  index.html index.htm; # 默认的访问文件
           if (!-e $request_filename) {
              rewrite ^(.*)$ /index.html?s=$1 last;
             break;
           }  #处理页面刷新404错误
        }

我已将相关要点在对应配置后面做了备注,可能会影响正常使用,建议大家在实际使用中把和配置在同一行的备注去掉。

配置完conf文件后,双击nginx启动
在这里插入图片描述
这样我们在访问http://192.168.100.252:5101的时候,就会打开你的前端项目页面,在请求接口时,需要在前端项目将base url改为:http://127.0.0.1:5101/api;这样当前端请求后端地址http://127.0.0.1:5101/api/auth/login 时会将请求的接口地址带到http://127.0.0.1:8968/api/auth/login上;我的前端和后端部署在同一台服务器上,不在同一台服务器上也可以实现,只需要修改proxy_pass的对应值(后端接口的真实地址)就可以了。我们前端项目的域名和请求后端接口的域名都是192.168.100.252:5101,这样就不会存在跨域问题了。
在项目部署中遇到了页面刷新404和方向代理不能处理问题,都解决了。解决方案如下:
处理页面刷新404问题,在localtion / 下加

 if (!-e $request_filename) {
              rewrite ^(.*)$ /index.html?s=$1 last;
             break;
           }

不能正常反向代理:
错误配置如下:

location /api/ {
          proxy_pass              http://127.0.0.1:5102/api;
          proxy_set_header        Host 127.0.0.1;
          proxy_set_header        X-Real-IP $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }

修改后的正确配置

location /api/ {
          proxy_pass              http://127.0.0.1:5102/api/;
          proxy_set_header        Host 127.0.0.1;
          proxy_set_header        X-Real-IP $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }

或者下面示例中的也完全可以

location /api {
          proxy_pass              http://127.0.0.1:5102/api;
          proxy_set_header        Host 127.0.0.1;
          proxy_set_header        X-Real-IP $remote_addr;
          proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
        }

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Python数据分析与可视化】:使用【Matplotlib】实现销售数据的全面分析 ——【Matplotlib】数模学习

目录 安装Matplotlib 1.打开PyCharm: 2.打开终端: 3.安装Matplotlib: 4.确认安装: 导入Matplotlib 创建简单的折线图 代码解析: 创建子图 代码解析: 创建柱状图 代码解析: 创建散点…

总结一下Linux、Windows、Ubuntu、Debian、CentOS等到底是啥?及它们的区别是什么

小朋友你总是有很多问好 你是否跟我一样,不是计算机科班出身,很多东西都是拿着在用,并不知道为什么,或者对于它们的概念也是稀里糊涂的,比如今天说的这个。先简单描述下,我先前的疑问: Linux是…

《昇思25天学习打卡营第9天 | 昇思MindSpore使用静态图加速》

第九天 本节了解到AI编译框架分为两种运行模式,分别是动态图模式以及静态图模式。MindSpore默认情况下是以动态图模式运行,但也支持手工切换为静态图模式。 1.动态图模式 动态图的特点是计算图的构建和计算同时发生(Define by run&#xff09…

Studying-代码随想录训练营day23| 39.组合总和、40.组合总和II、131.分割回文串

第23天,回溯part02,回溯两个题型组合,切割(ง •_•)ง💪 目录 39.组合总和 40.组合总和II 131.分割回文串 总结 39.组合总和 文档讲解:代码随想录组合总和 视频讲解:手撕组合总和 题目:…

一文汇总VSCode多光标用法

光标的创建 按住alt,鼠标左键单击,在单击位置生成光标/删除光标 按住ctrlalt,单击↑/↓,在每行同一个位置(若某一行较短,则在行尾)生成光标,这个不会删除光标,只会在光标…

点击获取2024SIAL西雅国际食品展上海展后报告

随着2024年SIAL 西雅展(上海)的圆满落幕,我们不仅见证了一场食品与饮料行业的国际盛会,更是感受到了上海这座城市独有的魅力与活力。在这里,我们回顾了上海展的辉煌成就,同时,我们也满怀期待地展…

基于横纵向的混合联邦学习原理分析

近期陆续接触到关于混合联邦学习的概念,但基于横纵向的混合联邦实际的应用案例却几乎没有看到,普遍是一些实验性的课题,因此这一领域知识没有被很好普及。本篇文章的目的,主要是分析讨论关于横纵向混合联邦学习的业务场景、应用架…

Linux Redis 服务设置开机自启动

文章目录 前言一、准备工作二、操作步骤2.1 修改redis.conf文件2.2 创建启动脚本2.3 设置redis 脚本权限2.4 设置开机启动2.5 验证 总结 前言 请各大网友尊重本人原创知识分享,谨记本人博客:南国以南i、 提示:以下是本篇文章正文内容&#x…

【Electron】Electron入门实现

Electron 学习笔记 Electron 是一个开源框架,允许开发者使用网页技术(HTML、CSS 和 JavaScript)来构建跨平台的桌面应用程序。它由 GitHub 开发并维护,最初是为了支持开发 Atom 编辑器。Electron 结合了 Chromium(用于…

海外仓一件代发业务优化指南:成本构成分析及优化策略

一件代发是大部分海外仓的核心业务,不过随着海外仓市场竞争的加剧,仓库经营成本上涨成了普遍现象。 今天我们会结合众多海外仓的实际情况,综合分析海外仓一件代发业务成本的构成,成本激增的原因以及对应的优化策略,希…

仓库选址问题【数学规划的应用(含代码)】阿里达院MindOpt

本文主要讲述使用MindOpt工具优化仓库选址的数学规划问题。 视频讲解👈👈👈👈👈👈👈👈👈 一、案例场景 仓库选址问题在现代物流和供应链管理中具有重要的应用。因为仓库…

findfont: Generic family ‘sans-serif‘ not found because none of the ...: SimHei

警告过程 python代码在使用matplotlib画图时,如果在title,xlabel,ylabel中出现了中文,则会出现字体警告,中文字符显示为方框 例如代码: # matplotlib画图# 设置色带plt.imshow(data, cmapplt.cm.YlGn) #…

【AI大模型】应用开发基础,学到就是赚到!

前言 1、了解大模型能做什么 2、整体了解大模型应用开发技术栈 3、浅尝OpenAI API的调用 AI全栈工程师:懂AI、懂编程、懂业务的超级个体,会是AGI(Artificial General Intelligence 通用人工智能)时代最重要的人。 知识体系 AI学习…

【Mybatis 与 Spring】事务相关汇总

之前分享的几篇文章可以一起看,形成一个体系 【Mybatis】一级缓存与二级缓存源码分析与自定义二级缓存 【Spring】Spring事务相关源码分析 【Mybatis】Mybatis数据源与事务源码分析 Spring与Mybaitis融合 SpringManagedTransaction: org.mybatis.spri…

Ubuntu/Linux调试安装南京来可CAN卡

准备好USB rules文件和can driver文件备用! 必做:放置USB rules文件到对应位置处理权限问题 而后:安装内核driver并编译。需求众多依赖编译环境,视情况安装填补。如GCC,G,make等等 进入对应64bit文件夹中,添加权限,执…

爬虫:爬取知乎热榜一级评论及回答2024不包含翻页

一、先上结果(注:本文仅为兴趣爱好探究,请勿进行商业利用或非法研究,负责后果自负,与作者无关) 1、爬标题及其具体内容 2、抓标题下的对应回答 3、爬取对应一级评论 二、上流程 1、获取cookies(相信哥哥姐姐…

Qt Creator创建一个用户登录界面

目录 1 界面设计 2 代码 2.1 登录界面 2.2 注册界面 2.3 登陆后的界面 3 完整资源 这里主要记录了如何使用Qt Creator创建一个用户登录界面,能够实现用户的注册和登录功能,注册的用户信息存储在了一个文件之中,在登录时可以比对登录信息…

大厂程序员上班猝死成常态?

大家好,我是瑶琴呀,拥有一头黑长直秀发的女程序员。 近日,连续看到大厂程序员猝死、低血糖晕倒的新闻,同为程序员感到很难受。互联网加班成常态这是既定事实,尤其在这个内卷严重、经济不景气的环境中,加班…

actual combat 31 —— 多级表头excel导出

设置模板占位符 &#xff08;模板占位符表头不带点&#xff0c;非表头数据行带点&#xff0c;举例{.ago}&#xff0c;{ago}&#xff09;引入easyExcel依赖 <dependency><groupId>com.alibaba</groupId><artifactId>easyexcel</artifactId><v…

【深度学习】图形模型基础(1):使用潜在变量模型进行数据分析的box循环

1.绪论 探索数据背后的隐藏规律&#xff0c;这不仅是数据分析的艺术&#xff0c;更是概率模型展现其威力的舞台。在这一过程中&#xff0c;潜在变量模型尤为关键&#xff0c;它成为了数据驱动问题解决的核心引擎。潜在变量模型的基本理念在于&#xff0c;那些看似复杂、杂乱无…