nginx的反向代理,google一直都是不容易打开的,如果你有一台位于国外的vps或者服务器,就可以轻松解决这个问题,这次的主角是nginxnginx的反向代理现在已经发展很强大了,很多时候拿他来做负载均衡,当然这次只聊聊他的反向代理网站,有人也拿它来做小偷程序。

本次会用到一个nginx的模块,如果没有安装请到官方网站:

https://github.com/yaoweibin/ngx_http_substitutions_filter_module

里面有详细的安装说明,需要重新编译一下nginx。

下面贴一下nginx的配置,假如我们要绑定的域名是www.abc.com,google的地址为www.abc.com/google/

配置如下:

  1. location /google {
  2. proxy_set_header Accept-Encoding "";
  3. proxy_redirect http://www.google.com/ http://www.abc.com/google/;
  4. proxy_pass http://www.google.com/;
  5. proxy_set_header X-Real-IP $remote_addr;
  6. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  7. subs_filter 'www.google.com' 'www.abc.com/google';
  8. subs_filter 'href="/' 'href="http://www.abc.com/google/';
  9. subs_filter '<form action="/' '<form action="http://www.abc.com/google/';
  10. }
  1. 重新启动nginx,访问www.abc.com/google/ 即可转向google
  2.  
  3. 再贴一个twitter的:
  4.  
  5. C#
  6.  
  7. location /twitter {
  8. proxy_set_header Accept-Encoding "";
  9. proxy_redirect https://mobile.twitter.com/ https://www.abc.com/twitter/;
  10. proxy_pass https://mobile.twitter.com/;
  11. subs_filter mobile.twitter.com www.abc.com/twitter;
  12. subs_filter 'href="/' 'href="https://www.abc.com/twitter/';
  13. subs_filter '<form action="/' '<form action="https://www.abc.com/twitter/';
  14. subs_filter 't.co' 'www.abc.com/t.co';
  15. }
  16. location /t.co {
  17. proxy_pass http://t.co/;
  18. }
  19.  
  20. location /twitter {
  21. proxy_set_header Accept-Encoding "";
  22. proxy_redirect https://mobile.twitter.com/ https://www.abc.com/twitter/;
  23. proxy_pass https://mobile.twitter.com/;
  24. subs_filter mobile.twitter.com www.abc.com/twitter;
  25. subs_filter 'href="/' 'href="https://www.abc.com/twitter/';
  26. subs_filter '<form action="/' '<form action="https://www.abc.com/twitter/';
  27. subs_filter 't.co' 'www.abc.com/t.co';
  28. }
  29. location /t.co {
  30. proxy_pass http://t.co/;
  31. }

这个需要打开ssl功能,也就是https访问,这个不难,我之前也介绍过,怎么拿到浏览器能够认证的免费ssl证书。

nginx 反向代理 google的更多相关文章

  1. nginx 反代理google

    ./configure \ --prefix=/usr/share/nginx --conf-path=/etc/nginx/nginx.conf --http-log-path=/var/log/n ...

  2. 前端通过Nginx反向代理解决跨域问题

    在前面写的一篇文章SpringMVC 跨域,我们探讨了什么是跨域问题以及SpringMVC怎么解决跨域问题,解决方式主要有如下三种方式: JSONP CORS WebSocket 可是这几种方式都是基 ...

  3. Nginx(三)------nginx 反向代理

    Nginx 服务器的反向代理服务是其最常用的重要功能,由反向代理服务也可以衍生出很多与此相关的 Nginx 服务器重要功能,比如后面会介绍的负载均衡.本篇博客我们会先介绍 Nginx 的反向代理,当然 ...

  4. 为docker私有registry配置nginx反向代理

    公司的Docker私有registry已经搭建好了,用官方的registry image很容易就搭建好了.现在就是要用nginx的反向代理把它放出来,以便在外网可以访问. 我的上一篇blog 讲了如何 ...

  5. nginx反向代理与正向代理

    nginx反向代理与正向代理 1 正向代理 正向代理: 原因是 客户端 ---X--- 网站,客户端不能直接访问某个网站 解决: 客户端 ----> 代理服务器(发起访问请求) ----> ...

  6. 服务器上nginx反向代理的配置

    Nginx不但是一款高性能的Web服务器,也是高性能的反向代理服务器.下面简单说说Nginx的反向代理功能. 反向代理是什么? 反向代理指以代理服务器来接受Internet上的连接请求,然后将请求转发 ...

  7. (总结)Linux服务器上最简单的Nginx反向代理配置

    Nginx不但是一款高性能的Web服务器,也是高性能的反向代理服务器.下面简单说说Nginx的反向代理功能. 反向代理是什么? 反向代理指以代理服务器来接受Internet上的连接请求,然后将请求转发 ...

  8. nginx反向代理实现均衡负载及调度方法

    http upstream配置参数: ngx_http_upstream_module模块将多个服务器定义成服务器组,而由proxy_pass, fastcgi_pass等指令进行引用 upstrea ...

  9. nginx 反向代理实现负载均衡*配置实战

    重要点: 1配置反向代理多虚拟主机节点服务器 2经过反向代理后的节点服务器记录用户IP 3与反向代理配置相关的更多参数说明 4根据URL目录地址转发 (1)根据URL中的目录地址实现代理转发(动静分离 ...

随机推荐

  1. 八幅漫画理解使用JSON Web Token设计单点登录系统

    用jwt这种token的验证方式,是不是必须用https协议保证token不被其他人拦截? 是的.因为其实只是Base64编码而已,所以很容易就被解码了.如果你的JWT被嗅探到,那么别人就可以相应地解 ...

  2. Samba实现Linux与Window文件的传输

    Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通 ...

  3. ThreadLocal类的实现用法

    ThreadLocal是什么呢?其实ThreadLocal并非是一个线程的本地实现版本,它并不是一个Thread,而是threadlocalvariable(线程局部变量).也许把它命名为Thread ...

  4. u1-nav-css

    header:before, header:after ,.navigation:before, .navigation:after,.nav-row:before, .nav-row:after,. ...

  5. Java基础-被final修饰的引用变量的指向

    final修饰的引用变量一旦初始化赋值之后就不能再指向其他的对象,那么该引用变量指向的对象的内容可变吗?看下面这个例子: public class Test { public static void ...

  6. note.js之 Mongodb在Nodejs上的配置及session会话机制的实现

    上篇我们使用nodejs实现了一个express4的网站构建配置,但一个有面的网站怎么可以缺少一个数据库呢.现在较为流行的就是使用MONGODB来作为nodejs网站引用的数据库,可能它与nodejs ...

  7. Oracle修改数据表

    (1)修改数据表中某个字段值为空: update 表明   别名  set 别名.字段名 例子:update JWT_JYWF t set t.jdsbh=''(2)设置数据表中某个字段值和rownu ...

  8. myeclipse 引入jar包 (包括 jdbc 驱动引用)

    A.直接用MyEclipse里自带的相关的项目jar包,右击项目"MyEclipse"菜单,选择对应的jar包就OK了 B.添加外部的jar包到web项目的lib包下,右击项目&q ...

  9. Bootstrap教程:[4]栅格系统详解

    http://jingyan.baidu.com/article/6f2f55a1852aa1b5b83e6c5a.html 们都知道bootstrap3.0使用了四种栅格选项来形成栅格系统,这四种选 ...

  10. Java多线程基础(一)

    一.基本概念 线程状态图包括五种状态 1.新建状态(New):线程对象被创建后,就进入新建状态.例如,Thread thread=new Thread(); 2.就绪状态(Runnable):也被称为 ...