反向代理

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。

正向代理

正向代理我的理解就是:当你想要获取某台服务器的内容时却受到某些阻挠无法直接获取到它的内容,这就需要一台中转服务器,我们通过这台中转服务器间接获取到目的服务器的内容,例如说你想要访问某外网资源,却又受到局域网的限制,这时候你就可以通过访问代理服务器间接访问外网,这就是所说的正向代理。

那为什么要配置反向代理,一般配置反向代理主要用于处理跨域问题。而所谓的跨域就是受限于同源策略,即相同的协议、域名、端口号。一旦其中有一样不同,就会造成跨域。

介绍完简要概念,下面直接进入主题。

如果要在ubuntu上直接配置ngnix就必须要以 管理员的身份进入到ubuntu系统。

首先我们需要安装一下nginx,命令如下:

sudo apt-get install nginx

安装完成之后,我们先检查一下nginx的版本,看下是否安装成功

nginx -v

安装成功后,我们进入nginx的目录下

cd /etc/nginx/

我们进入今后可以通过ls命令看下下面有哪些文件夹

接着我们我们进入到conf.d的这个文件夹,新建一个命名为binguo-online-8787的配置文件

(命名看个人喜好,我一般是以自己域名加上端口号来命名)

cd conf.d

sudo vi binguo-online-8787.conf

创建之后我们来编译一下它的配置文件,建议自己一个个打进去,这样下次配置的时候会更有印象.

(如果编译错误,可以继续通过sudo vi binguo-online-8787.conf进去修改代码,大多是中英文,或者漏写了空格或多加了冒号的错误,然后重新保存编译就可以了)

注意:我的服务器端口是8787,默认监听端口是80端口   server_name 写自己服务器外网的ip地址 例如11.112.113.114  http://binguo写域名或者不写可以

下面代码根据自己的服务器监听的端口修改

upstream binguo{

server 127.0.0.1:8787;

}

server {

listen 80;

server_name  11.112.113.114;

location / {

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forward-For $proxy_add_x_forwarded_for;

proxy_set_header Host $http_host;

proxy_set_header X-Nginx-Proxy true;

proxy_pass http://binguo;

proxy_redirect off;

}

}

进入如果无法敲代码通过按下i键即可,敲完后按下esc键恢复初始命令光标状态再按下shift+;号,输入!wq保存代码

写完配置文件然后开始运行(如果操作时间过长需要重新输入管理员密码)

sudo nginx -t

显示运行成功后,重启下nginx

sudo nginx -s reload

然后我们就可以在浏览器上通过11.112.113.114访问到nginx默认的页面啦

接着 我们只需要重启一下我们的服务器就可以通过11.112.113.114访问服务器啦!

处理跨域的方法还有很多,网上一搜一大堆,但是我觉得用nginx处理跨域还是比较简单易懂的,在window配置nginx方式也是类似!

如果大家发现更好的处理跨域的方法也可以推荐给我下哈 O(∩_∩)O哈哈~!

ubuntu上配置nginx实现反向代理的更多相关文章

  1. 在ubuntu上面配置nginx实现反向代理和负载均衡

    上一篇文章(http://www.cnblogs.com/chenxizhang/p/4684260.html),我做了一个实验,就是利用Visual Studio,基于Nancy框架,开发了一个自托 ...

  2. 在ubuntu上面配置nginx实现反向代理

    1.下载nginx    官网:http://nginx.org/en/download.html    直接在服务器上下载 wget http://nginx.org/download/nginx- ...

  3. docker配置nginx做反向代理管理tomcat应用

    由于业务开始复杂,单一tomcat已经不足以满足业务需求,多tomcat部署起来不方便而且面临域名解析问题,因此开始增加反向代理,由于docker的易用性,便使用docker管理各个应用. docke ...

  4. 在ubuntu上配置nginx+php+mysql+phpmyadmin

    1.先更新ubuntu系统 更新命令 sudo apt-get update sudo apt-get upgrade 2 添加ubuntu nginx更新源镜像 cd /etc/apt/ sudo ...

  5. 在Linux上部署Nginx,反向代理tornado的WebSite

    1.安装 Nginx yum install -y nginx 2. 修改nginx配置文件 cd /etc/nginx/ mv nginx.conf nginx.conf.swf mv nginx. ...

  6. Nginx 笔记与总结(15)nginx 实现反向代理 ( nginx + apache 动静分离)

    在 nginx 中,proxy 用来实现反向代理,upstream 用来实现负载均衡. 例如有两台服务器,nginx 服务器作为代理服务器,执行 .html 文件,apache 服务器上执行 .php ...

  7. 【本地服务器】用nginx进行反向代理处理(windows)

    在通过json-server搭建本地服务器得到 http://localhost:3000/todos   的基础上,要想将接口改为www.test.com/todos这样的形式 ,则需要用nginx ...

  8. NGINX如何反向代理Tomcat并且实现Session保持

    简介 LNMT=Linux+Nginx+MySQL+Tomcat: Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器: 在中小型系统和并发访问用户不是很多的场合下被 ...

  9. CentOS 7 安装Nginx做反向代理

    题记 须要使用nginx的反向代理功能,測试环境为centos+NGINX 1.8.0. 跳过一些繁琐的问题,直接记录核心 步骤 (1)centos 安装在VM中.因此须要注意网络连接问题 (2)安装 ...

随机推荐

  1. 【读书笔记】《Maven实战》第6章 仓库

    6.1什么是Maven仓库? Maven仓库:存储所有Maven项目共享的构件的统一位置. Maven仓库的作用:Maven项目仅需声明依赖坐标,即可在需要的时候自动根据坐标找到仓库中的构件. 6.2 ...

  2. BZOJ_4590_[Shoi2015]自动刷题机_二分答案

    BZOJ_4590_[Shoi2015]自动刷题机_二分答案 Description 曾经发明了信号增幅仪的发明家SHTSC又公开了他的新发明:自动刷题机--一种可以自动AC题目的神秘装置.自动 刷题 ...

  3. MySql-两阶段加锁协议

    此篇博客主要是讲述MySql(仅限innodb)的两阶段加锁(2PL)协议,而非两阶段提交(2PC)协议,区别如下: 2PL,两阶段加锁协议:主要用于单机事务中的一致性与隔离性. 2PC,两阶段提交协 ...

  4. springboot redis多数据源

    springboot中默认的redis配置是只能对单个redis库进行操作的. 那么我们需要多个库操作的时候这个时候就可以采用redis多数据源. 本代码参考RedisAutoConfiguratio ...

  5. js操作中要去注意的一些问题

    1.js中注意问题 font-size 改成fontSize padding-top 改成paddingTop js中不认识-,所以要以小驼峰方式操作属性或者以[" "]方式,例[ ...

  6. Django web框架开发基础-django实现留言板功能

    1.创建项目 cmd  django-admin startpoject cloudms 2.创建APP cmd django-admin startapp msgapp 3.修改settings,T ...

  7. VS2017 WinFrom打包设置与教程

    前言 项目中有用到winfrom做配套的打印程序,直接给客户一个debug文件夹,当然不是很好.. 记录一下打包过程. 正文 首先需要下载 Visual Studio插件,到如图的地方下载: 搜索Mi ...

  8. Github:修改Github仓库中项目语言类型

    前述 有的时候我们把项目上传到github仓库上时语言会显示错误语言 比如一个java项目可能因为有js文件的存在而被识别为js项目 这种时候我们就要手动去修改Github的项目语言类型 解决办法 在 ...

  9. 深入理解Linux内核 学习笔记(4)

    第四章 中断和异常 中断通常被分为同步中断和异步中断,同步中断是当指令执行时由CPU控制单元产生的,之所以称为同步,是因为只有在一条指令终止执行后CPU才会发出中断异步中断是由其他硬件设备依照CPU时 ...

  10. MySQL在删除表时I/O错误原因分析

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 本文由腾讯数据库技术 发表于云+社区专栏 问题现象 最近使用sysbench测试MySQL,由于测试时间较长,写了一个脚本按prepare- ...