nginx 反向代理

原创 2012年03月28日 13:57:36

题记:

问题主要是因为自己工作的环境经常需要进行hosts绑定的操作,有时候要绑定10几个,多个环境切换非常麻烦,后来发现有的同事采用代理的方式统一绑定,实在觉得是个恢长好的办法啊,所以对代理工具就进行了比较详细调查,写下了这篇文章,文章的解决的关键问题也是如何通过代理进行hosts绑定。


以下文章是我的个人理解,不足或错误的地方敬请指正,谢谢!


代理这个词相信对大家来说都不陌生,熟悉翻墙的同学一定很熟悉。呵呵这篇文章不要说明如何找梯子,相信大家是八仙过海各有各的办法。


学习代理首先要明确两个概念:正向代理/反向代理。关于正向和反向的说明google一下资料很多。

简单理解所谓正向就是一个从内向外的访问,而所谓反向则是一个从外向内的访问。正向和反向是一个相对的概念。

简单说吧,我们知道nginx是一个非常优秀的反向代理工具,各大网站很多都在用nginx做反向代理,对于外部访问网站的用户开放的nginx反向代理服务器,而页面的生成工作则是通过内部的web服务来完成的,服务的实现方式可能千差万别。

而正向代理,则是我们一般意义的翻墙,通过代理去访问,然后从代理中返回结果,原理就是这样的。

那么何为相对呢?相对于内部的服务那么nginx就是反向代理,代理接受用户请求;而相对于用户,就是正向代理,代理用户去请求。明白了这个相对的过程,实际我们就可以让nginx成为我们的正向代理工具,而将外面的网络视为整个后端在给我们提供服务。

以上转载。


当通过http://www.XXX.com访问时, 实际上代理到了http://192.168.xxx.yyy:8080/Action/

server {
    listen          80;
    server_name     www.XXX.com; # 通过Windows的hosts配置来DNS这个域名
    location / {
        proxy_pass http://192.168.xxx.yyy:8080/Action/;
        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}


反向代理:即上面的80端口只监听从外至内的访问中的80端口。



Windows 中Hosts文件的作用:

浏览器输入域名,如:www.sina.com.

windows会先查找hosts文件中是否已经存在此域名的映射,如果不存在,再通过dns域名解析服务器去解析这个域名,得到对应的新浪的IP地址。再通过这个ip地址访问新浪网。

目的就是一个:得到IP地址。

具体参考:http://wenku.baidu.com/view/180738bfc77da26925c5b0c4.html


更改nginx的配置文件后,在去访问浏览器,此时,浏览器存在缓存,可能不会立即应用nginx的配置,即使 nginx restart也无济于事,所以必须清楚浏览器缓存再执行。

         server {
                 listen  80;
                 server_name www.163.com;# 通过Windows的hosts配置来DNS这个域名

         location / {
                            proxy_pass    http://sina.com;
                            proxy_redirect off;
                     }
               }
         server {
                 listen  80;
                 server_name www.baidu.com;# 通过Windows的hosts配置来DNS这个域名

         location / {
                            proxy_pass    http://www.google.com;
                            proxy_redirect off;
                     }
               }


结果:输入www.163.com会跳转到新浪网,输入www.baidu.com会跳转到google首页。

hosts中的映射关系:

127.0.0.1 www.163.com
127.0.0.1 www.baidu.com

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Nginx 反向代理

  • 2016-11-20 19:29
  • 30KB
  • 下载

squid,nginx,lighttpd反向代理的区别

反向代理从传输上分可以分为2种: 1:同步模式(apache-mod_proxy和squid) 2:异步模式(lighttpd 和 nginx)   在nginx的文档说明中,...

Nginx反向代理

  • 2015-04-21 18:10
  • 1.71MB
  • 下载

nginx-负载均衡和反向代理

  • 2014-08-04 17:10
  • 1.38MB
  • 下载

Nginx反向代理实现均衡负载

nginx-reverse-proxy-conf 为jue.so架设一个服务器集群。 架设服务器均衡负载方式有多种,Nginx、LVS、HAProxy+Keepalived...

nginx反向代理

  • 2014-07-31 14:28
  • 1.17MB
  • 下载

Nginx反向代理和proxy

  • 2013-06-05 09:08
  • 189KB
  • 下载

Nginx 反向代理+Varnish 技术

Nginx 反向代理+Varnish 技术 转载了峰哥的劳动成果!!!   一、         ...

Nginx反向代理

  • 2014-07-13 10:36
  • 5.43MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)