我们在前端开发的过程中,在对接口时候,往往需要跨域请求,那么及其简便的方法就是使用nginx反向代理,但是存在几点缺点

1.在新的一个项目下,我们需要找到安装nginx目录的nginx.conf文件并且修改代理内容,重启才能有效

2.如果修改错误,还会影响之前正确的代理端口

3.这个配置文件非常复杂,不利于新手编写

于是有没有更好的方式呢,答案是肯定的,前段时间学习了docker的内容,发现nginx容器可以实现非常多的代理,而且可以随时关闭随时开启,但是命令行输入还是显得比较麻烦,于是我自己就封装了一下,现在实现前端代理就只需要一行命令。如果想学docker,推荐阮大神的博客 docker入门

一.首先,你需要下载docker,关于docker实在是一个非常好用的东西,在我们这个教程你完全不需要了解它,只需要下载它

1.mac 下载地址 https://docs.docker.com/docker-for-mac/install/

2.windows       https://docs.docker.com/docker-for-windows/install/

下载好,运行下列命令,验证是否安装成功

docker version

如果没有启动docker,使用下列命令启动

# service 命令的用法
$ sudo service docker start # systemctl 命令的用法
$ sudo systemctl start docker

二.下载镜像

1.使用命令

docker image pull nginx

这就是下载了nginx镜像,想了解具体ngxin镜像怎么玩(完全可以不需要了解)推荐阮大神 nginx容器教程

三. 简单配置代理,代理到你想要的地址

1.去往 https://github.com/jiangzhenfei/docker-nginx 将文件夹下的文件(一共两个文件)拷贝到你需要代理的index.html目录

其中:

  add.conf   这个文件是你需要配置代理,配置非常简单,我也在里面写了几个配置的例子,当然不配置也是可以的,但是就不能代理到你想要的地址了

  

location /blog/ { #遇到/blob/开头的ajax就代理到http://47.93.103.19:30010这个地址
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://47.93.103.19:30010/;
proxy_redirect off;
}

  nginx.js   这个文件是启动文件,不需要任何修改

四. 启动和关闭

1.node nginx.js 启动,这个时候你只需要 打开http://localhost:8080/ 就能看见你的html页面了,并且里面接口的转发都是正确的

2.如果想关闭整个代理,只需要执行 node nginx.js stop 即可,再次访问就访问不到了

一键前端代理,一行命令开启nginx容器,代理前端页面的更多相关文章

  1. docker中使用nginx容器代理其他容器

    Nginx is an HTTP and reverse proxy server, a mail proxy server, and a generic TCP/UDP proxy server, ...

  2. nginx之旅(第三篇):代理、正向代理、反向代理、代理的原理、nginx反向代理场景、nginx反向代理配置、nginx反向代理语法

    一.代理服务与反向代理 什么是代理服务 代理-代理办理(代理理财.代理收货.代理购物等等). 一般情况下,如果没有特别说明,代理技术默认说的是正向代理技术.关于正向代理的概念如下: 正向代理(forw ...

  3. 前端跨域调请求 nginx反向代理

    用 本地pc的目录,请求192.168.3.246的接口,以/api为标识 运行命令: 启动 nginx -s start 重启 nginx -s relaod 停止 nginx -s stop 查看 ...

  4. 一行命令开启VNC 和windows之间复制粘贴功能

    sudo apt install autocutsel 安装完成之后: [注意]中文会乱码!!! 执行以下命令: autocutsel 这个则是后台运行,选择一种即可: autocutsel -f

  5. nginx反向代理https访问502, nginx反向代理, 支持SNI的https回源,SNI源点,nginx反向代理报错

    正常nginx配置了SSL是可以通过HTTPS访问后端的,但是对有配置SNI + https后端的支持有点麻烦. 编译安装nginx后,看一下是否支持SNI /usr/local/nginx/sbin ...

  6. docker使用nginx反向代理springboot

    docker运行nginx容器 快速安装运行 docker-hub文档 https://hub.docker.com/_/nginx 拉取nginx1.6.0 docker pull nginx:1. ...

  7. Vue Nginx反向代理配置 解决生产环境跨域

    Vue本地代理举例: module.exports = { publicPath: './', devServer: { proxy: { '/api': { target: 'https://mov ...

  8. nginx反向代理出现了代理的端口号

    nginx反向代理显示了代理的端口号 nginx反向代理配置文件 upstream mall { server 1.1.1.1:10261 weight=1; } server { listen 80 ...

  9. nginx反向代理+缓存开启+url重写+负载均衡(带健康探测)的部署记录

    在日常运维工作中,运维人员会时常使用到nginx的反向代理,负载均衡以及缓存等功能来优化web服务性能. 废话不多说,下面对测试环境下的nginx反向代理+缓存开启+url重写+负载均衡(带健康探测) ...

随机推荐

  1. Django学习笔记---第一天

    Django学习笔记 1.Django的安装 //如果不指定版本号,默认安装最新版 pip3 install django==1.11.8 关于Django的版本和python的版本依赖关系,请看下图 ...

  2. TCP系列06—连接管理—5、TCP fastopen(TFO)

    一.TFO背景 当前web和web-like应用中一般都是在三次握手后开始数据传输,相比于UDP,多了一个RTT的时延,即使当前很多应用使用长连接来处理这种情况,但是仍然由一定比例的短连接,这额外多出 ...

  3. (六)Redis有序集合Sorted set操作

     Sorted set全部命令如下: zadd key score1 member1 score2 member2 ... # 将一个或多个member元素及其score值加入到有序集合key当中 z ...

  4. Javascript 中 == 和 === 区别是什么?

    Javascript 中 == 和 === 区别是什么? 作者:Belleve链接:https://www.zhihu.com/question/31442029/answer/77772323来源: ...

  5. 【原创】U盘插入磁盘显示脱机解决

    问题说明:插入U盘,电脑可识别硬件,打开我的电脑,无显示U盘所在的磁盘.,并且在计算机管理的磁盘管理看到的U盘为脱机状态 解决方案:1.打开命令,输入 diskpart  回车,输入list disk ...

  6. 具体数学数论章-----致敬Kunth

    整除性(divisible): 引入了代表整除性. m\n (m|n) 表示m整除n.注意这里的整除.表示的是n = km(k为整数). 在整除性这里.m必须是个正数.也许你可以描述n 是 m 的k倍 ...

  7. [洛谷P3979]遥远的国度

    题目大意:有一棵$n$个点的树,每个点有一个点权,有三种操作: $1\;x:$把根变成$x$ $2\;u\;v\;x:$把路径$u->v$上的点权改为$x$ $3\;x:$询问以$x$为根的子树 ...

  8. POJ3261:Milk Patterns——题解

    http://poj.org/problem?id=3261 给一个序列,求至少出现 k 次的最长重复子串,这 k 个子串可以重叠. 论文题+傻逼题. 上一道题(POJ1743)会做即可. 还是二分长 ...

  9. BZOJ4596:[SHOI2016]黑暗前的幻想乡——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=4596 https://www.luogu.org/problemnew/show/P4336#su ...

  10. BZOJ1486:[HNOI2009]最小圈——题解

    https://www.lydsy.com/JudgeOnline/problem.php?id=1486 https://www.luogu.org/problemnew/show/P3199 题面 ...