码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • vue使用代理打包之后404,405问题排查


    今天前端说他的服务部上去发现404,405

    环境:后端接口已经部署并进行了域名解析;
    问题:前端本地 npm run dev没问题,打包之后出现404然后出现405;
    凭借我多年的经验首先锁定到nginx上,但是我们的运维不太给力,搞了下没搞好,前端也是个小菜鸟,只能亲自上阵了。

    解决思路如下:

    1、模拟生产环境

    • 后端的接口是正常的,并且进行了域名解析,跨域设置(这里后端的朋友注意下cors跨域)

    • 所以只需要模拟出前端环境和运维环境就可以了

      • 前端环境:为了紧着不麻烦别人的态度,自己随便git一个vue项目,改一下打包环境,主要如下:
        vue.config.js在这里插入图片描述

      其中VUE_APP_BASE_API我这里是在下全局设置的为/apii/,其实就是前端代理的前缀:http://前端ip:port/apii/后端接口

      • 运维环境:
        自己刚好有云服务器,ubuntu系统,真的是难用,好多插件都没有,安装起来也是麻烦一堆,
        主要是:1、装nginx,tomcat(运行前端打包后的静态文件)

    问题解决

    1、前端npm run build:prod 后生成的dist文件往tomcat- ROOT目录中一丢,ok跑起来了
    2、接下来是nginx的配置了

    因为前端请求后端进行了代理,通过apii前缀访问到后端接口,所以我的思路是必须要让这个前缀换成我后端的域名:端口,nginx中配置代理如下:这里是不需要进行ssl证书认证的

    server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                proxy_pass  http://127.0.0.1:8081;
            }
    		# 主要就是这里,只需要nginx反向代理apii这个前缀就可以了,
    		location /apii {
    			# 这个是把apii前缀给去掉
    			rewrite  ^/apii/(.*)$ /$1 break;
    			# 这个就是后端的接口地址
                proxy_pass https://xx.xxx.com:10086;
            }
    ........
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    然后就可以了~

  • 相关阅读:
    搭建ASGI高性能web服务器FastAPI,python
    golang定时器使用踩的坑:定时器每天执行一次
    基于Java毕业设计阳光社区新冠瘦苗接种系统源码+系统+mysql+lw文档+部署软件
    STM32单片机语音识别MP3播放器音乐播放器TF卡播放器
    python基础(一)、列表的创建和操作
    第十天:基于Ubuntu和gec6818开发板的QT图书管理系统完整项目设计
    LeetCode:第304场周赛【总结】
    计算机视觉CV
    nodejs+vue人脸识别考勤管理系统的设计与实现-计算机毕业设计
    数据安全常用术语表 V0.1 附下载地址
  • 原文地址:https://blog.csdn.net/JGMa_TiMo/article/details/125412419
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号