node,koa2实现nginx服务器代理功能
文章目录
- vue项目打包,api设置为替换api
一、vue项目打包,api设置为替换api
那么调用接口的时候默认是本地调用,这个时候部署到node上的项目会自己调用自己的资源,那么是调用不到的
二、使用koa2的koa2-proxy-middleware功能进行代理操作
一定不要使用koa-bodyparser,那么请求转发只能转发请求get,post无效也可能会503
const Koa = require('koa')
const app = new Koa()
const views = require('koa-views')
const json = require('koa-json')
const onerror = require('koa-onerror')
const logger = require('koa-logger')
const fs = require("fs");
const path = require("path");
const proxy = require('koa2-proxy-middleware');
// error handler
onerror(app)// middlewares
app.use(json())
app.use(logger())
app.use(require('koa-static')(__dirname + '/public'))app.use(views(__dirname + '/views', {extension: 'pug'
}))const options = {targets: {'/api/(.*)': {target: 'http://xx.xxx.xx.xx:80/',ws: true,changeOrigin: true,pathRewrite: {'^/api/': '' //和前端代理一样,选择api替换为什么}},}
}app.use(proxy(options));// logger
app.use(async (ctx, next) => {ctx.set("Access-Control-Allow-Origin", "*");if (ctx.url == "/") {await next();} else {const html = await fs.readFileSync(path.resolve(__dirname + "/public/index.html"));ctx.body = html.toString();}
})// error-handling
app.on('error', (err, ctx) => {console.error('server error', err, ctx)
});module.exports = app
node,koa2实现nginx服务器代理功能相关推荐
- Nginx反向代理——简单体验Nginx反向代理功能
一.引言 从Nginx入门学习开始.到现在所讲的Nginx反向代理.我们的Nginx学习已经进入白热化状态,前面所学只是铺垫,真正在公司的业务场景中Nginx绝大数用来反向代理+负载均衡所用.相信大家 ...
- nginx服务器代理设置
如果你的nginx服务器请求都是从其他代码服务器过来的,代理服务器把用户的ip使用http_x_forwarded_for 传过来,我们可以配置nginx,所这个值传给remote_addr,这样ph ...
- 用nginx反向代理功能将WS转为加密websocket (wss)
原来写的服务器端程序支持websocket非加密协议,即仅支持 ws://ip/file 形式的访问,现在网站的主协议变成了https了,再通过ws://协议来访问原服务器,浏览器阻止了.查找原因就是 ...
- Nginx代理功能与负载均衡详解
序言 Nginx的代理功能与负载均衡功能是最常被用到的,关于nginx的基本语法常识与配置已在上篇文章中有说明,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx代理服务的 ...
- 介绍下Nginx 反向代理与负载均衡
Nginx的代理功能与负载均衡功能是最常被用到的,这篇就开门见山,先描述一些关于代理功能的配置,再说明负载均衡详细. Nginx 代理服务的配置说明 1.设置 404 页面导向地址 error_pag ...
- Nginx反向代理,负载均衡,redis session共享,keepalived高可用
本站点停止更新,请访问:blog.coocap.com 相关知识自行搜索,直接上干货... 使用的资源: nginx主服务器一台,nginx备服务器一台,使用keepalived进行宕机切换. tom ...
- 直接让web服务运行在80端不行吗,为什么要用nginx反向代理?
Web服务是可以运行在80端口的,而且默认也是监听80端口.为什么用nginx做反向代理,应该是跟题主的应用环境有关 题主当前的应用环境 按照题主的意思,应该是你当前的web服务器上监听的是非80端口 ...
- Nginx 正向代理反向代理与负载均衡
Nginx简介 Nginx是一款轻量级的Web 服务器/反向代理服务器 占有内存少,并发能力强 官方测试nginx能够支撑5万并发链接,并且CPU.内存等资源消耗却非常低,运行非常稳定. Tengin ...
- Nginx反向代理与负载均衡应用实践
本链接转载自:https://www.cnblogs.com/chensiqiqi/p/9162926.html 仅供自学使用. 1.1 集群简介 简单地说,集群就是指一组(若干个)相互独立的计算机, ...
最新文章
- 特质波动率python
- 如何修改被编译后DLL文件
- Markdown--表格语法
- STM32+华为云IoTDA,带你设计一个属于自己的动态密码锁
- mysql meb安装_用meb搭建MySQL Master/Slave
- 手写token解析器、语法解析器、LLVM IR生成器(GO语言)
- 关于linux文件系统出现脏数据修复的思路
- 计算机专业必装软件mac,MAC电脑可运行的常用软件有哪些?
- 什么是纹波、噪声、过冲、回沟?
- 计算机ctrl加什么作用,计算机中快捷键ctrl加什么是返回上一步
- MongoDB被黑记录
- C#学习笔记004——生成(创建)文本文件
- CephFS 介绍及使用经验分享
- 民营企业如何设置绩效考核指标的标准
- 【数据结构】一元多项式
- 软件配置管理(一)配置管理概念与目标
- 深析 | 手机摄像产业趋势—多摄/TOF/高倍变焦或成行业新风口
- epoll的ET工作模式和LT工作模式
- javaScript 美化上传文件框
- 网站api自己怎么写_网站seo优化中文章标题怎么写?