nginx与vue路由

news/2024/7/10 2:58:00 标签: 前端, 开发语言, vue

nginx代理方式

server {

listen 80;

server_name localhost;

location /order/{ 

    proxy_pass http://localhost:8080/order 
    
}

表示监听80端口,将请求反向代理到后端服务器。

例如:当浏览器请求的路径是 localhost:80/order/get,检测到请求路径里的/order/的时候proxy_pass将代替这个标识符之前(包括标识符)的内容。也就是说访问的是 localhost:8080/order/get。

  location后边的字段拦截的是公用前缀。在这里后端接口为/order/get,proxy_pass为http://localhost:8080/order ,如果后台接口为/get,那么proxy_pass为http://localhost:8080。


后端接口:
/api/order/get
/api/order/test

后端端口号:localhost:8080

nginx该怎么配?

 ==>

location api/order/ {
        proxy_pass    http://localhost:8080/api/order/

}

浏览器输入 localhost:80/api/order/get

想让它转到 localhost:8080/order/get

nginx该怎么配?

 ==>

location api/order/ {
        proxy_pass    http://localhost:8080/order/

}

或者

location api/ {
        proxy_pass    http://localhost:8080

}

具体使用哪种取决于业务场景。

VUE代理方式

server: {
      port: 3333,
      /** 接口代理 */
      proxy: {
        "/sign-system": {
          target: "http://localhost:8080/sign-system",
          rewrite: (path) => path.replace("/sign-system", "")
        }
      }
    }

表示监听3333端口,将请求反向代理到后端服务器。

例如:当浏览器请求的路径是 localhost:3333/sign-system/sign,检测到请求路径里的/sign-system/的时候,将这个标识符及后边内容 (/sign-system/sign) 一起追加target内容后边。则这里访问到的是 localhost:8080/sign-system/sign-system/sign。

replace("/sign-system", "") 将 /sign-system 转为空格,也就是访问路径变成了 localhost:8080/sign-system/sign。      注意:replace内替换的 /sign-system 是浏览器请求路径中的/sign-system。

总结

vue代理方式在不加 replace("/sign-system", "") 的时候,是将标识符追加到target后边;当加 replace("/sign-system", "") 语句后,原理则与nginx方式相同。


http://www.niftyadmin.cn/n/5224348.html

相关文章

基于LNMP快速搭建WordPress平台

目录 1 LNMP简介 2 WordPress简介 3 安装MySQL环境 3.1 安装MySQL 3.1.1 下载wget工具 3.1.2 下载MySQL官方yum源安装包 3.1.3 安装MySQL官方yum源 3.1.4 mysql安装 3.2 启动MySQL 3.3 获取默认密码 3.4 登录MySQL ​ 3.5 修改密码 3.6 创建WordPress数据库并授权 3.6.1 创…

基于Spring原生框架构建原生Spring的第一个程序!

😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…

面向植保任务的无人机集群系统及其应用研究

摘 要 随着无线通信技术的发展,无人机在民用和军事上的应用越来越广泛。由于单无人机负重少、体积小、覆盖面积小,不能满足复杂任务需求,近年来,关于无人机集群协同编队控制方面的研究发展迅速。植保无人机在实际作业过程中&…

【开源】基于Vue.js的大学计算机课程管理平台的设计和实现

项目编号: S 028 ,文末获取源码。 \color{red}{项目编号:S028,文末获取源码。} 项目编号:S028,文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 实验课程档案模块2.2 实验资源模块2…

60V 72V 输入 输出5V 2A 内置MOS 降压芯片 ESOP8封装

60V 72V 输入 输出5V 2A 内置MOS 降压芯片 SC9102 ESOP8封装

ubuntu中root和普通用户切换方法

ubuntu登录后,默认是普通用户权限,那么普通用户权限和root权限如何切换呢,下面总结下它们之间如何切换。 普通用户切换到root用户 登录ubuntu后,按上组合键CTRLALTT进入终端界面,一般终端界面默认为普通用户权限模式…

达索系统3DEXPERIENCE WORKS 2024 结构仿真功能增强

simulia结构仿真是什么? 不仅能对结构进行力学、热学、声学等多学科计算,辅助于设计方案的优化;还能采用数字化技术模拟产品性能,大幅节约试验和样机迭代成本。达索系统3DEXPERIENCE WORKS 2024 结构仿真为企业提供随需应变、精准…

解决:SyntaxError: Non-UTF-8 code starting with À in file but no encoding declared

解决:SyntaxError: Non-UTF-8 code starting with in file but no encoding declared 文章目录 解决:SyntaxError: Non-UTF-8 code starting with in file but no encoding declared背景报错问题报错翻译报错原因解决方法使用utf-8格式使用gbk格式今天…