GFWInterceptor-iPhone/iPad/iPod Touch自动代理软件安装教程与使用方法

分享到:

虽然使用iOS终端访问外网的方法很多,诸如Hosts,VPN,SSH等等,不过有没有一种一劳永逸的方法可以顺利的畅游外网呢?下面给大家详细介绍一款Cydia上的自动代理应用软件:GFWInterceptor

什么是 GFWInterceptor

GFWInterceptor 是 iPhone/iPad/iPod touch 设备上的自动代理插件,应用程序不需要支持API Proxy,也能够强制将请求通过第三方服务器中转。 现阶段已经能够适用于Twitter, facebook等不少应用。 GFWInterceptor 包括两个部分,第一部分为mobilesubstrate插件,用于拦截并将所有特定的http请求转发,第二部分为运行在GAE上的服务端版本,服务器仅仅做中转。其中第二部分基于 twitter-api-proxy 的代码实现 http://code.google.com/p/twitter-api-proxy/ 只支持越狱后的各iOS设备。不适用于 Safari 与 WebView 需要账号登录的部分。不能用于看视频。

客户端支持情况

Tweetings 有问题。其它一些采用网页 OAuth 的客户端应该在登录过一次后能行。Twitter for iPhone 因为 API 调用方式的关系会超出 GAE 的 Limit, 所以有些功能会时好时坏。 其余的客户端应该支持基本完美。

如何安装

在cydia中添加源

http://cydia.ifuckgfw.com

或者 http://gfwinterceptor.googlecode.com/svn/trunk/cydia   (推荐后者)安装源内包既可,gfwinterceptor 依赖于 mobilesubstrate 和 preferenceloader。如果安装完毕没有在 Preference 中看到设置,说明没有正确安装。

\

内置服务器随时被墙

即内置默认的waytosing.appspot.com服务器,所以建议大家搭建自己的 api-proxy server (在本文末尾会介绍如何搭建GAE和PHP两种api-proxy server)

如何使用

安装后respring,gfwinterceptor即刻生效,可以试着打开 Twitter 应用直接使用(不用设置API,如果以前设置了可以去除)。在 Settings.app 会出现 gfwinterceptor 的设置选项。

FAQ

为什么我的 Twitter for iPhone 无法看 Profile, conversation 和 搜索? Twitter for iPhone 调用 search api,检查是否follow,查看profile的问题,是因为其软件自身设计的问题导致 (没有发出 Authorization Header),最彻底的解决方法是别用它了。 为什么不做 SBSettings 开关呢?因为 gfwinterceptor 的代码只有在程序启动时才会载入,而没有后台进程,所以不能制作 SBSettings 开关。包括一些会后台的应用,也得重启以后才能生效。

==============================进阶分割线==============================

GAE api-proxy server 架设方法

下载最新的GAE api-proxy server源程序:http://gfwinterceptor.googlecode.com/files/api-proxy-gae-v2-0.6d.zip

用Notepad++或者记事本打开 app.yaml

更改

1
application: waytosing

内的waytosing为你的GAE应用ID,例如

1
application:deepice-example

然后使用Google App Engine Launcher上传文件到GAE服务器. (Google App Engine Launcher具体使用方法请参照http://www.deepice.net/gae-gtalk-group 第8步)

此程序无需创建索引(Index)所以上传后即可直接使用,把你的服务器地址添入主力服务器替换原http://waytosing.appspot.com服务器重启iPhone即可.(用户名和密码不用管,因为GAE版没有此项功能.)

不过appspot服务器在国内已被墙,不出意外应该是无法直接访问的.所以需要写入iphone内的hosts文件.

使用iFunBox或者91之类的iphone文件管理软件进入iphone内 etc\hosts文件(请自行备份),使用文本编辑器打开在最后面另起一行添加

1
203.208.46.22 你的GAE_ID.appspot.com

例如

1
203.208.46.22 deepice-example.appspot.com

保存即可,文件权限644

如果IP地址失效请在http://just-ping.com网站内查询g.cn的最新可用IP具体方法参照:
http://www.deepice.net/gae-appspot-domain-access

PHP服务器 api-proxy server 架设方法

服务器环境要求

服务器最好运行 Linux / FreeBSD 等操作系统,需要使用 apache httpd(nginx 有专用版本,请直接往下看),并且启用了 mod_rewrite,PHP 启用了 cURL支持。

下载/解压缩源代码

下载最新版的PHP api-proxy server源程序:http://gfwinterceptor.googlecode.com/files/api-proxy-php-0.6.zip解压后将 api-proxy-php 目录中的所有文件上传 / 移动到服务器相应目录。

文件配置

将 ~htaccess 文件改名为 .htaccess,之后用编辑器打开 users.config,按照文件中示范的每行一个用户名密码,用分号分隔的格式填入允许访问服务器的用户名密码。 不过需要注意的是,在默认 mime 情况下,apache 会把 users.config 当作文本文件,也就是说别人在浏览器输入 your.server/users.config 可以直接看到你的用户密码配置文件!临时解决办法是修改 index.php 第六行

1
$file_handle = fopen("users.config", "rb");

中的 users.config 位置,最好放到 http root 以外,比如改成 /home/gkp/gfw/users.config,之后把 users.config 移动到相应的位置就可以了。

开始使用吧

在安装好 GFWInterceptor 的 iDevice 上进入 Settings –> GFWInterceptor,将主力服务器设置成你安装 PHP 服务器端文件的地址,注意开头的 http:// 不要省略。在相应的位置填入上一步 users.config 中设定的用户名和密码,之后 respring 一下,打开 twitter for iPhone, Facebook, Foursquare 等应用试试看吧,没有问题的话应该可以顺利登录了。之后打开 safari,试试看 m.twitter.com,应该也是可以访问的。

有问题?

当安装 php-server 出现问题时,首先查看下 apache 的日志文件,如果都是类似于 File does not exist: /var/www/html/1 这样的报错的话,应该是 url rewrite 没有正常工作,请检查 apache 的 mod_rewrite 和 php-server 目录下面的 .htaccess 文件。

适用于 nginx 的版本

适用于 nginx 的 php 服务端程序目前还不支持用户名密码验证,安装方法如下:

  • 下载 http://gfwinterceptor.googlecode.com/files/api-proxy-php-ngix-0.4.zip,并解压缩
  • 把 api-proxy-php-ngix 目录下的文件上传/移动到服务器相应目录
  • 把 gic 这个虚拟主机配置文件放到 nginx 会自动 include 的目录中,并编辑之,根据实际情况修改域名,文档目录等选项,最后重启 nginx。
  • 搞定!


版权所有© Deepice | 本文采用 BY-NC-SA 进行授权
转载需注明 转自: Deepice|逍遥's Blog
订阅RSS:Feed.Deepice.net


VN:F [1.9.18_1163]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.18_1163]
Rating: 0 (from 0 votes)

相关日志:

One Response to GFWInterceptor-iPhone/iPad/iPod Touch自动代理软件安装教程与使用方法

Leave a Response

You must be logged in to post a comment.