君行天下 发表于 2014-6-11 16:09:58

另类的nginx反代去优酷视频广告实验

不得不说,优酷是一个好网站。但我很久没用优酷了,这几天突然想看看,于是打开优酷,结果60s以上的广告将我打败了。于是在网上搜索找到了一个另类解决方法,应不适用于普通用户我就假单的写个教程:
首先,找台国内vps,编译安装nginx。用他的反向代理和第三方关键字替换模块反向代理v.youku.com,因为优酷是备案了的网站因此不受国内vps白名单限制,可以直接添加绑定。然后在本地电脑设置hosts文件ip指向你的vps即可(也可以在一些路由上面设置dnsmasq或hosts)。以下为本次试验用的nginx配置文件内容:
server{
    listen          80;
    server_name   v.youku.com;
      access_log off;                #off 关闭日志
    location / {
      subs_filter_types text/css text/xml application/xhtml+xml application/xml;
    subs_filter v.youku.com $host;#后面的是反向的域名,这里就是为了替换原域名
      subs_filter 'static.youku.com/(.*?)/v/swf/(.*?).swf' 'opengg.spring-world.net/flashes/youku/youkuloader_20140603.swf' ir;
                subs_filter 'http://static.youku.com/(.*?)/index/js/qwindow.js' '#' ir;
                subs_filter 'http://static.youku.com/(.*?)/index/js/popup.js' '#' ir;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   Referer http://v.youku.com; #强制定义Referer,程序验证判断会用到
    proxy_set_header   Host v.youku.com;
    proxy_pass         http://v.youku.com; #被代理网站的IP地址
    proxy_set_header   Accept-Encoding "";
      }
               
      location ^~ /crossdomain.xml {
      subs_filter yk.pp.navi.youku.com $host;
    proxy_set_header   X-Real-IP $remote_addr;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   Host yk.pp.navi.youku.com;
    proxy_pass         http://yk.pp.navi.youku.com; #被代理网站的IP地址
    proxy_set_header   Accept-Encoding "";
      }
}

页: [1]
查看完整版本: 另类的nginx反代去优酷视频广告实验