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

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

https://github.com/yaoweibin/ngx_http_substitutions_filter_module

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

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

配置如下:

location /google {
        proxy_set_header Accept-Encoding "";
        proxy_redirect http://www.google.com/ http://www.abc.com/google/;
        proxy_pass http://www.google.com/;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        subs_filter 'www.google.com' 'www.abc.com/google';
        subs_filter 'href="/' 'href="http://www.abc.com/google/';
        subs_filter '<form action="/' '<form action="http://www.abc.com/google/';
}
重新启动nginx,访问www.abc.com/google/ 即可转向google

再贴一个twitter的:

C#

location /twitter {
proxy_set_header Accept-Encoding "";
proxy_redirect https://mobile.twitter.com/ https://www.abc.com/twitter/;
proxy_pass https://mobile.twitter.com/;
subs_filter mobile.twitter.com www.abc.com/twitter;
subs_filter 'href="/' 'href="https://www.abc.com/twitter/';
subs_filter '<form action="/' '<form action="https://www.abc.com/twitter/';
subs_filter 't.co' 'www.abc.com/t.co';
}
location /t.co {
proxy_pass http://t.co/;
}

location /twitter {
proxy_set_header Accept-Encoding "";
proxy_redirect https://mobile.twitter.com/ https://www.abc.com/twitter/;
proxy_pass https://mobile.twitter.com/;
subs_filter mobile.twitter.com www.abc.com/twitter;
subs_filter 'href="/' 'href="https://www.abc.com/twitter/';
subs_filter '<form action="/' '<form action="https://www.abc.com/twitter/';
subs_filter 't.co' 'www.abc.com/t.co';
}
location /t.co {
proxy_pass http://t.co/;
}

这个需要打开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. C头文件之<stdio.h>

    (stdio.h) 该头文件主要是执行输入输出操作.文件中重要的概念是“流”(streams).“流”在函数库中用FILE表示,用指针类型FILE *来操作.有三个标准流:stdin, stdout, ...

  2. 练习一_使用Git进行代码管理的心得

    2015年9月19日,第一次软工实践课.助教给我们介绍了git,GitHub.显而易见,我并没有听懂.所以整个上午都在找教程,一个字一个字对着敲,然后敲着敲着就出错,回宿舍,继续敲,也是一样的... ...

  3. JS子父窗口互相取值赋值详解介绍

    子窗口赋值到父窗口 代码如下 复制代码 <script>function openWin(str) {    window.open(siteurl+"popup/"+ ...

  4. LINQ构建交叉表

    最近碰到客户的一个需求.使用交叉表来显示客户数据.也就是以同时以行头和列头交叉形式显示数据内容.同时要求即使有些列没有数据,也需要显示该列内容,并设置默认值. 说明: “交叉表”对象是一个网格,用来根 ...

  5. hdu1247 字典树

    开始以为枚举会超时,因为有50000的词.后来试了一发就过了.哈哈.枚举没一个单词,将单词拆为2半,如果2半都出现过,那就是要求的. #include<stdio.h> #include& ...

  6. 图解Android - Binder 和 Service

    在 Zygote启动过程 一文中我们说道,Zygote一生中最重要的一件事就是生下了 System Server 这个大儿子,System Server 担负着提供系统 Service的重任,在深入了 ...

  7. Mysql常出现的问题

    1.mysql如何导入.txt文件?load data local infile 'D:\\data.txt' into table 表名 fields terminated by '\t';2.my ...

  8. 修改mysql最大连接数的方法

    MYSQL数据库安装完成后,默认最大连接数是100,一般流量稍微大一点的论坛或网站这个连接数是远远不够的,增加默认MYSQL连接数的方法有两个 方法一:进入MYSQL安装目录 打开MYSQL配置文件 ...

  9. Fedora21下安装cuda7.5

    Fedora21装cuda7.5 首先制作启动U盘.装好fedora21后别做任何update等yum和rpm操作,按照下面步骤走. 其中遇到用UEFI模式安装cuda时,系统一定要求提供公钥和私钥, ...

  10. TCP/IP详解 学习七

    静态选路的前提: 1)         网络比较小 2)         网络之间单点连接 3)         网络之间没有多余的路由 动态选路协议,用于路由器之间的通信,有以下几种: 1)     ...