当前位置:首页 > 教程 > 正文内容

nginx和vue反向代理(nginx反向代理nodejs)

2023-05-23 13:10:07教程1

nginx和vue反向代理

vur反向代理ip能接端口,可是前提是要通过服务代理,通过特制的信号接收器实现,这样就能够访问目标地址了。

需求:项目有多个服务器地址,都需要做代理。

直接把测试和正式的接口地址写到 .env.development 和 .env,production里,通过process.env.VUE_APP_URL 这个可以获取到你定义的接口的变量值,VUE_APP_URL 这个东西是你自定义的在.env.development这个文件里,格式为VUE_APP_名字 = " " 赋值为你的公共接口地址,这是只有一个公共接口的情况,很好处理

在vue.confing.js 里面进行代理配置我的代理api比较多 所以先生成一个对象

生成的对象

proxyTable:{ '/ems': { target: '',// 需要访问的真实地址 changeOrigin: true,//开启代理 ws: true, secure: false, // 如果是https接口,需要配置这个参数为true pathRewrite: { '^/ems': 'ems' } // 重定向的地址 }, '/KTTiming': { target: 'changeOrigin: true, ws: true, pathRewrite: { '^/KTTiming': '' } } } 123456789101112131415123456789101112131415

在vue.confing.js找到devServer对象 将上面生成的对象赋给 proxy

在axios请求写url时侯直接写.env,production文件里配置的变量名例如

我需要访问的接口是,第一行 ‘/ems‘是一个标识,告诉它只代理接口里面有/ems这个字段的接口,我的目标服务器就是http://172.0.0.228:3103,即target定义的pathRewrite重定向‘^/ems’: ‘/ems’ 就是在代理是时候使用/api 代理,使用的时候就可以直接这样使用。

axios.get('/ems/v1').then((res)=>{ console.log(res) }) 123123

也可以不用pathRewrite 如同KTTiming 使用时就要写全地址后面的

axios.get('/ems/ems/v1').then((res)=>{ console.log(res) })。

nginx反向代理nodejs

是的,我也在使用一台阿里云的服务器。什么都可以安装,Memcached,redis,apache,nginx,nodejs都没有问题,放心安吧。可以自己安装MySQL,我没有用他家的云关系数据库。

nginx反向代理工作原理

vue是用来开发前端的,nginx是做反向代理的,如果想通过浏览器访问你的界面,可以通过nginx进行代理

nginx反向代理服务器优缺点

nginx反向代理占用资源在三万并发连接下,最大数量占据的内存是450m,也就是0.5g,这一数量的资源是最为靠谱的,是可以去除宕机的可能性的。

如果他采用正向代理,内存消耗小:处理大并发的请求内存消耗非常小。在3万并发连接下,开启的10个Nginx 进程才消耗150M内存(15M*10=150M)。

vuenginx反向代理配置

可能是Tomcat不通,检查一下不进行反向代理能不能通

nginx反向代理优点

可能的原因:

nginx配置有误,没有将请求转发到正确的处理程序(如php-fpm等),转发到一个不存在着的路径

请求已经转发到php处理程序,但php处理程序配置没有找到对应的脚本

php已经处理了脚本,但代码里返回了一个404的状态码

nginx代理与反向代理

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。

nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。

apache是世界使用排名第一的Web服务器软件。

本网站文章仅供交流学习 ,不作为商用, 版权归属原作者,部分文章推送时未能及时与原作者取得联系,若来源标注错误或侵犯到您的权益烦请告知,我们将立即删除.

本文链接:https://www.xibujisuan.cn/98858512.html