本项目用于解决 pbs.twimg.com 在国内被屏蔽的问题。
本项目基于 tiangolo/uwsgi-nginx-docker 和 YUX-IO/uwsgi-nginx-flask-docker-for-sinaimg ,对此表示感谢!
项目仓库:
Github :HuanMeng0/uwsgi-nginx-flask-docker-for-twimg
DockerHub(如果 Github 上的仓库内容有更新,会自动进行构建更新 images):huanmeng/uwsgi-nginx-flask-docker-for-twimg
用法
https://pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig
(此处 orig 表示让服务器返回原图)
改成:
https://APP_URL/pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig
(不知为何不能带 https://或 http://)
License
Apache License2.0
Demo && 立刻使用: ihuanmeng.com/twimgrp/
例子:
https://ihuanmeng.com/twimgrp/pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig
1
SoloCompany 2016-06-10 01:20:47 +08:00
twimg.com 好像一直(或大多数)都没有被墙的吧
curl https://pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig -v > /dev/null % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Trying 104.244.43.135... 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0* Connected to pbs.twimg.com (104.244.43.135) port 443 (#0) * TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 * Server certificate: *.twimg.com * Server certificate: DigiCert SHA2 High Assurance Server CA * Server certificate: DigiCert High Assurance EV Root CA > GET /media/CkfhtlvWYAIgdMb.jpg:orig HTTP/1.1 > Host: pbs.twimg.com > User-Agent: curl/7.43.0 > Accept: */* > < HTTP/1.1 200 OK < Date: Thu, 09 Jun 2016 17:23:15 GMT < Server: Apache < access-control-allow-origin: * < cache-control: max-age=604800, must-revalidate < content-md5: ppYsQlEEfam1trtSfEdeww== < content-type: image/jpeg < last-modified: Thu, 09 Jun 2016 07:32:44 GMT < x-connection-hash: 03d3d915f1e9daee68c580e95d73d63a < x-response-time: 18 < Content-Length: 35924 < Accept-Ranges: bytes < Via: 1.1 varnish < Age: 34261 < X-Served-By: cache-tw-lax1-cr1-17-TWLAX1 < X-Cache: HIT < Expires: Fri, 24 Jun 2016 17:23:15 GMT < X-Content-Type-Options: nosniff < 0 35924 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0{ [7451 bytes data] 100 35924 100 35924 0 0 9606 0 0:00:03 0:00:03 --:--:-- 9605 * Connection #0 to host pbs.twimg.com left intact |
2
ZGLHHH OP |
3
YUX 2016-06-10 03:54:43 +08:00
|
4
fcicq 2016-06-10 07:41:16 +08:00
nginx rewrite 直接能搞定的事为什么要 flask? 又慢又阻塞, wsgi 下只能发送 full response, 不是楼主想象的边收边发.
|
5
9hills 2016-06-10 09:25:57 +08:00
E-M-T!
|
6
kendisk 2016-06-10 09:58:53 +08:00 via Android
nginx 反代一切
|
7
just1 2016-06-10 11:15:24 +08:00 via Android
没事干嘛扯 flask , nginx 就够的事情
|
8
ZGLHHH OP |
9
notgod 2016-06-10 14:35:09 +08:00 1
@ZGLHHH
还是太年轻啊 https://ihuanmeng.com/twimgrp/pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig 这种格式会触发网址关键词屏蔽的 因为包含了 *.twimg.com 的域名 有人访问 不出 1 周就阵亡了 所有涉及 不可描述 的 使用加密 或者混淆下 |
12
notgod 2016-06-10 18:51:42 +08:00
|
14
notgod 2016-06-10 19:30:59 +08:00
所有涉及 不可描述 的 使用加密 或者混淆下
比如 https://ihuanmeng.com/twimgrp/pbs.twimg.com/media/CkfhtlvWYAIgdMb.jpg:orig 使用一个算法 加密字符串 https://ihuanmeng.com/twimgrp/dawedwaudhweiaduiawd/media/CkfhtlvWYAIgdMb.jpg:orig 然后 nginx 端 截取 dawedwaudhweiaduiawd 解密算法 解密为 pbs.twimg.com 向后端请求 这样就不会触发了 反代保留 不可描述 的原域名地址 就是找死 一个人无问题 一天 10IP 就 kill 了 我见过 前脚注册了一个域名 使用 proxy php 的程序 访问下 https://sss/face book. com 后脚域名就被 Qiang 了 |
16
t123yh 2016-06-10 20:03:31 +08:00 via Android
顺便问一个问题,这种获取上游能不能用 HTTP Proxy 或者 socks5 Proxy 啊,这样可以把站点架设在境内,由服务器走代理
|
17
ZGLHHH OP |
18
ZGLHHH OP @notgod 我建立了一个 antiblock 分支用于解决你所说的问题: https://github.com/HuanMeng0/uwsgi-nginx-flask-docker-for-twimg/tree/antiblock
|
19
czb 2016-06-11 10:51:11 +08:00 via Android
HTTPS 下墙应该只能拿到 HOST ,具体目录是拿不到的
|
23
czb 2016-06-12 06:25:05 +08:00 via Android
@lslqtz 对的……我的表达有问题……我的意思是 SNI 和证书都是泄漏 HOST 的途径,并没有特指 IE6...
|
25
lslqtz 2016-06-22 02:39:52 +08:00
今天建了个谷歌反代。。想知道推特反代怎么搞
|