Gavin

nginx反向代理google

百度搜索各种技术的解决方案实在是惨不忍睹,但是google大面积被封锁,真的让所有技术人员想死,如果有条件购买国外VPS的,可以最简单的搭建个nginx,配置反向代理即可。

曾经尝试过用apache进行反向代理,配置的过程简直惨不忍睹。而nginx的配置实在是把简单发挥到了极致

以下是配置方式


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
server {
    listen       80;
    server_name  google.nginx.com; #反向代理的域名

    access_log  /data/log/nginx/google.nginx.com.access.log  main;

    location / {
        auth_basic "Google"; #增加一层校验,防止别人随便进来看见什么
        auth_basic_user_file admin_pwd;

        proxy_redirect https://www.google.com.hk/ http://google.nginx.com/; #将https的google域名替换成自己的域名
        proxy_set_header Host www.google.com.hk;
        proxy_set_header Referer https://www.google.com.hk;
        proxy_set_header User-Agent $http_user_agent;
        proxy_set_header Accept-Encoding ""; #不启用压缩内容,否则无法替换掉其中的js、css等资源
        proxy_set_header Cookie "PREF=ID=047808f19f6de346:U=0f62f33dd8549d11:FF=2:LD=zh-CN:NW=1:TM=1325338577:LM=1332142444:GM=1:SG=2:S=rE0SyJh2w1IQ-Maw"; #这行最重要,传固定的cookie给谷歌,是为了禁止即时搜索,因为开启即时搜索无法替换内容。另外设置为新窗口打开网站
        proxy_set_header Accept-Language "zh-CN";
        proxy_set_header X-Forwarded-Proto http;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass https://www.google.com.hk/; #反向代理的实际地址

        sub_filter https://www.google.com.hk http://google.nginx.com; #替换返回的内容中的google域名为自己的域名
        sub_filter_once off;
    }

}

 

码字很辛苦,转载请注明来自淡兰色的海洋《nginx反向代理google》

评论

  1. GB #1

    照着弄了下,不挂代理访问www.google.com.hk是成功了,但好像接下来搜索跳转页面时又挂了?

    回复
    2015-05-6
    • Gavin

      没遇到过,搞了shadowsocks后就没在用过反代了,晚上我看下

      回复
      2015-05-14
  2. liwl #2

    nginx有个扩展http_google_filter

    回复
    2017-07-17