自学内容网 自学内容网

通过nginx去除 api url前缀 并保持后面剩余的url不变向后台请求

如 我前台浏览器向后台请求的接口是 http://127.0.0.1:5099/api/sample/sample/getbuttonlist

实际的请求接口传向   http://192.168.3.71:5099/sample/sample/getbuttonlist

方法是向config中加入下面这样一个server

    server {
        listen       5099;
   location /api/ {
        rewrite ^/api/(.*)$ /$1 break; # 使用正则表达式去掉 "/api/v1" 前缀
        proxy_pass http://192.168.3.71:5099; # 将处理后的请求转发给后端服务器
        # 可能还需要其他代理相关的配置,如 proxy_set_header 等
    }

    }

背景是我开发vue3用vite做的代理,我每个请求都刻意加一个前缀api,vite代理可自动识别api开头的接口,将api开头的请求去除,并向后台请求,开发服务其好使。但打包发布后放到nginx代理页面 就带api直接请求了,后台没有这个api开头的接口就报404了 http://127.0.0.1:5099/api/sample/sample/getbuttonlist

刚开始想从vite,前台配置等找方式解决,后看网上有用ngnix的,简单粗暴的解决也行,实际测试好使


原文地址:https://blog.csdn.net/oMangGuoBuDing1/article/details/140045750

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!