opera mini 翻墙大法
随着中国人民的和谐事业的推进,GFW也越来越嚣张,一个个国外知名网站不断被封,让众多网民苦不堪言,而到了去年,和谐事业更是推进到了手机上,uc,opera,skyfire等翻墙利器一个个不堪压力而屈服。以opera mini为代表的,opera分中国版和国际版,中国版用的是中国的服务器,完全无法访问和谐网站,而国际版的曾经能够顺利访问,而被和谐后,只要打开程序,就会跳转到一个页面,要求下载中文版的opera。但是广大网民的智慧是无穷的,纵然河蟹横行,长城隔阻,也能翻越。
首先说一下opera mini的工作原理:当手机要访问网站A的时候,opera mini会向服务器B提出请求,B再向A发出请求,将返回的网页压缩为适合手机浏览的网页,返回给opera mini,这样一来,既节省流量,又减轻了手机端的负荷。而opera mini国际版挂掉,问题也是出在这个服务器B上,B回根据请求来源手机的IP判断所属位置,如果是中国IP,则自动跳转到那个要求下载中文版opera mini的页面。
为了解决这个问题,有两种解决办法:
1,换用一个不进行IP验证的中转服务器B1,如德国的服务器(socket://195.189.142.176:9003,http://195.189.142.176:9002)。
2,利用一个代理服务器C,原理类似于电脑上的代理。这时访问的模式是:手机->C->B->A,而B得到的C的IP,如果C的IP是中国以外的IP,就不会有国际版的自动跳转的问题了。
修改opera mini 服务器:
对于Java版的opera mini,已经有高手做出来可自定义服务器的版本,可以直接输入服务器,另外也可以自己修改jar文件,这里有一个傻瓜工具omsc,可以直接更代理服务器。操作如图所示,注意选择相应的opera mini 版本
对于WM版的opera mini,可以用winhex打开OperaMini5-WM-armv4i.exe文件,查找“http://”即可找到代理服务器所在的字符串,改成可用用的中转服务器,或者自己建立的代理服务器。一般直接建立的服务器端口都是默认的80,所以不用填入。修改完了替换原来的文件即可,如果是GAE建立的服务器,只能用HTTP代理。
下面再讲一下如何自己建立一个opera mini的代理服务器,这个就稍微麻烦点,不过做过独立博客网站的人,肯定也不会陌生。主机可以用Google App engine中提供的,简称GAE,支持Java和Python,这两种语言的代理网站程序代码都已经有人做好了。或者也可以使用php空间,这种可以找国外的免费空间,基本上都是支持php的,代码也有现成的。
用GAE搭建Opera Mini服务器镜像
PHP空间可以搭建Opera Mini服务器镜像,用Google App Engine也可以,GAE除了担心被Qiang以外其他各方面都比PHP空间强。废话不多说,下面讲怎么在GAE上搭建Opera Mini Server Mirror。
1、注册一个GAE账户,记下Application ID,假如我申请的ID为“operaminism”;到Java官方网站下载并安装Java虚拟机(这儿下载虚拟机好像有点问题,可以直接从迅雷上面搜索下载);到Google Code的官方网站下载Java版GAE开发包;点此下载Java版的Opera Mini服务器镜像文件。
2、解压GAE的开发包和Java版的Opera Mini服务器镜像文件,把“opm_java”文件夹复制到GAE开发包“bin”目录下,即“appengine-java-sdk-1.3.2/bin/opm_java/” 。再把“appengine-java-sdk-1.3.2”复制到c盘根目录下。
3、用记事本打开文件夹下appengine-java-sdk-1.3.2/bin/opm_java/war/WEB-INF/appengine-web.xml文件,找到“application-id”修改为你刚才申请的Application ID。例如,我申请的“operaminism”。其实后面上传的程序的路径也是在这个文件中定义的。可以自行将/opm改成更目录/。
4、打开“命令提示符”,输入“cd /appengine-java-sdk-1.3.2/bin”,再输入“appcfg.cmd update opm_javawar”,(这儿update后面接的是本地目录,上传的路径由appengine-web.xml文件决定)然后按提示输入邮箱和密码。(这儿输入密码是不会显示*号的,只能看见光标闪动,正常输入完就行了)
5、上传完成后打开:Application-ID.appspot.com/opm,如果跳到Google首页,表示成功了。 如我假设申请的“operaminism.appspot.com/opm”。
这儿还有Python版的文件,同样的先在app.yaml文件中加入申请的id,可用同样的方法上传,这个默认的路径是根目录,即operaminism.appspot.com/。
php空间也是同样的道理,直接将index.php文件传到网站根目录下就行了。不过空间必须支持cURL,很流行的kilu.de的免费空间好像是不支持了。
另外发现基于gae的opera服务器不是很稳定,经常会出现无法连接的出错提示。php版的试了一下虽然ping值比gae还高,速度却快不少,也稳定。
给出两个自建的opera mini代理的地址:go2opm.appspot.com opm.0fees.net
相关网页:
http://todaym.com/2010/04/gae-build-opera-mini-server-mirror.html
http://code.google.com/p/opm-server-mirror/downloads/list
相关文件:
Java版的:opera mini 5和4.2 自定义服务器版
本站文章请注明,转载自:仲卯杂记
本文链接: https://zoomao.net/2010/05/05/opera-mini-over-gfw.html
感谢分享。
汗,cmd输入email的password是不显示的.我还以为我系统不行。建议楼主备注一下
[回复]
奇怪,你的网站无法复制?
[回复]
@lzlh
能复制的,只是加上了一个js代码,复制后会自动加上一句关于网址的内容。复制的内容还是能看到的,只是有时候直接粘贴会有些问题。
[回复]
无语 你把IP地址写的那么详细 还被GFW BLOG收录鸟 无语啊 不被墙才怪呢
[回复]
对于WM版的opera mini,能否讲得详细点?? 我替换后提示说什么长度不一样,然后运行不了…能否教教小弟..方便的话可以发邮件给我吗? 万分感谢…
[回复]
@Dave
替换代理的时候应该自己将光标移到到原来的字符处,逐个字符的覆盖,不足的用.覆盖,保证位置不变。
[回复]
@zoomao
怪了,我今天还是复制不了,虽然选择,复制过程中没有任何错误提示,但是粘贴的时候贴的仍是原来剪贴板中的内容。昨天这样,今天依旧。chrome dev浏览器。又用firefox测试了下,没问题。
[回复]
@lzlh
算了,我把原来的复制时自动加上来源信息的代码去掉了,免得有时候复制起来比较麻烦。
其实原来的肯定是能复制出来的,我亲自试验过的。
[回复]
自己修改的WM版Opera Mini提示无法连接网络
[回复]
@XK
首先自建的服务器在opera mini的设置中只能使用http代理,而且服务器偶尔会有提示无法连接的情况,重试几次就行了,翻墙也不容易啊。
[回复]
@zoomao
Done!!
Thank you very much!!
[回复]
修改完后,提示我:不是一个有效地ppc应用程序。怎么回事啊
[回复]
zoomao 回复:
六月 6th, 2010 at 07:59
估计应该是改变了程序的长度,应该是在覆盖模式下修改的,逐字符替换,不足的部分以.代替。用winhex修改过后,如果程序的图标都变了,基本上可以肯定程序是没法再用了。
[回复]
谢谢。还是不懂,能请你详细说明吗,最好举例。
[回复]
winhex修改的详细说明,谢谢
[回复]
不好意思,刚看到邮件,非常感谢
[回复]
请给我也发个wm mini修改的详细说明 捣鼓好久也弄不明白
[回复]
winhex修改的具体说明 谢谢
[回复]
我用opera5原版的去试了,改了服务器,上一些和谐的网站还是不行啊,显示的是内容被运营商屏蔽,怎么办
[回复]
用opera5自定服务器怎么改,去哪里找,用你提供的IP上不了和谐的网站,怎么去找另一些
一些服务器
[回复]
楼主,我下载Java版的Opera Mini服务器镜像文件怎么显示禁止啊,帮帮我
[回复]
zoomao 回复:
十一月 1st, 2010 at 12:32
刚才试了一下,能够正常下载啊。
[回复]
谢谢提供api,有时候,真是懒得折腾了
[回复]
你好,我按你的方法做的api能翻墙,但是不能收藏别人发的推,每次我点击那个五角星时,总是显出that page doesn’t exist,这是什么原因啊,求解决方法!
[回复]
zoomao 回复:
十一月 23rd, 2010 at 22:07
这个问题应该是opera mini本身的问题,我也遇到过用opera mini打开twitter,却发现登陆上去的是别的用户名,估计是opera mini对cookie的处理有问题。
[回复]
请问 如何搭建支持sock的代理啊 ,你那个是http代理吧
[回复]
zoomao 回复:
十二月 16th, 2010 at 21:54
这个问题我也没有解决,网上只有http中转代理的相关代码。
[回复]
你好,请问这个opm.php代码中怎么加入google analytices呀 ?我想用google analytices实现监控代理服务器的访问状态,该怎么添加代码?没有看到/body,/head之类的代码呀!
[回复]