反向代理https谷歌

    由于众所周知的原因,谷歌在tc被屏蔽了,但是搜索学术性和一些技术性的文章百度又比不上,所以还得用到谷歌,为了方便自己,我就反代了一下谷歌,有两个版本。

   一、直接反向代理,使用的是7ghost源码搭建,优点是简单容易上手,缺点是容易被屏蔽。

   演示网站:http://g.90r.org

    二、使用SSL加密反向代理,优点是安全、不易被屏蔽,缺点是技术性相对较强,需要折腾的地方也多。

   演示网站:http://www.90r.org    (设置了http重定向到https)

    现在主要简单说下第二种方法的设置过程。

Step1:你得需要有一台Linux的海外VPS。
Step2:Nginx环境的建立(为了方便,教程中就用AMH一键包进行环境构建,当然你用军哥一键包或纯Nginx环境#也就是只安装nginx,不用安装php、sql啥的#都是可以的。)

Step3:安装好AMH后,登陆AMH后台(默认地址为你的VPS IP地址:8888),点击模块扩展——下载模块——搜索“SSL”,点击下载。

好了,现在咱们的SSL模块已经安装完成了。

现在点击虚拟主机,填写好域名信息,点击SSL配置,配置SSL相关信息。

(这里的SSL证书需要自行购买或生成,关于ssl证书可以参考我的文章:几个免费+便宜的SSL证书》



接着在VPS中执行vim /usr/local/nginx/conf/vhost/你的域名.conf (其他环境的以你的环境为准,AMH的conf在此处)

新增代码(要先把 你的域名.conf 这个文件全部清空再复制粘贴如下代码),然后保存退出,重启Nginx即可。(代码根据实际情况需要做一些改动,这里以完整代码的形式给出,代码最后一部分是让访问http跳转到https)

server
{
listen 443;
server_name 90r.org;

ssl on;
ssl_certificate /usr/local/nginx/conf/ssl/www.zmrbk.com.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/www.zmrbk.com.pem;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:-ADH:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP;

location / {

proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto https;
proxy_pass https://www.google.com;
}

}

server
{
listen 80;
server_name 90r.org;
rewrite ^(.*) https://90r.org$1 permanent;
}

server
{
listen 80;
server_name www.90r.org;
rewrite ^(.*) https://90r.org$1 permanent;
}

这两段代码不太一样,但都能实现反代功能,推荐上面这个代码。

server
{
listen 443;
server_name zmrbk.com;

ssl on;
ssl_certificate /usr/local/nginx/conf/ssl/www.zmrbk.com.crt;
ssl_certificate_key /usr/local/nginx/conf/ssl/www.zmrbk.com.pem;
ssl_protocols SSLv3 TLSv1;
ssl_ciphers ALL:-ADH:+HIGH:+MEDIUM:-LOW:-SSLv2:-EXP;

location / {
proxy_redirect off;
proxy_pass https://www.google.co.jp/;
proxy_redirect http://www.google.com/ /;
proxy_cookie_domain google.com zmrbk.com;
proxy_set_header Accept-Encoding "";
proxy_set_header User-Agent $http_user_agent;
proxy_set_header Accept-Language "zh-CN";
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";
}

}

server
{
listen 80;
server_name zmrbk.com;
rewrite ^(.*) https://zmrbk.com$1 permanent;
}

server
{
listen 80;
server_name www.zmrbk.com;
rewrite ^(.*) https://zmrbk.com$1 permanent;
}

server {  
    listen  www.zmrbk.com:80;  
    server_name zmrbk.com;  
      
    rewrite ^(.*)$  https://$host$1 permanent;  
}  

到这里已经全部完成。

教程主要来自猫总的网站(GFWTALK),我只是加了一些注释和补充了最后一段代码。


反向代理https谷歌》上有 9 条评论

  1. fazero

    还有个问题就是amh上布置的其他站点也跳转到google,而且其他站点也因为证书是那个反代的域名而提示错误,怎么解决,先谢博主

    回复
  2. 小黑

    您好,我很想问一个问题,如果用SSL的话,google会封服务器ip吗?再就是我通过代理访问的google,谷歌得到的是服务器ip还是我客户端的ip?如果是服务器ip会不会造成查询的次数多而造成封代理的服务器ip呢?谢谢。

    回复
    1. 追梦人博客 文章作者

      这个问题我不知道答案,所以不好回答你。我只能根据自己的使用经历来说。
      我反代谷歌几个月了还没被谷歌封IP过,至于查询次数过多的问题,有时谷歌会说你流量不正常,让你输入验证码啥的,不过这种情况也不多见。
      总的来说放心的反代吧,大不了换个ip,只要域名没被墙(谷歌或者gfw)就好了

      回复

发表评论

电子邮件地址不会被公开。 必填项已用*标注

您必须启用javascript在这里看到验证码!