June 13, 2010

Rabr的复活——免翻墙注册以及登录的推特客户端搭建指南

2010.06.18 Rabr-Glype集成包小规模更新,简化了设置步骤。增加URL后直接输入用户名转到用户界面功能(根据.htaccess实现)

    半个月前,著名的推特第三方rabr.in突然自我拔线,黯然神伤之余,只好自力更生,自己搭建Rabr。与许多第三方一样,Rabr的登录也分为Oauth和Basic Auth两种,一般情形下,前者虽然安全性较好但要翻墙,这给广大大陆网民造成了巨大的不便。在猪鼓励这篇博文的启发下,我打包出了这个Rabr-Glype集成包,同时对Rabr的部分代码作了些修正,支持自动翻墙的OAuth登录,希望大家喜欢。



  以下是简单的搭建教程,以alwaysdata的空间为例,我打包的Rabr也只在这个空间试验过,alwaysdata空间的申请指南见该文的上半部分。

1.确定你的PHP空间支持Curl和Mcrypt。(查看方法:将 phphinfo(); 语句任意嵌入一个php文件中运行)alwaysdata默认不开启Curl和Mcrypt支持,开启方法为:
进入空间的管理后台,选择环境、PHP,在PHP5 的 php.ini 和 PHP4 的 php.ini分别添加:

extension = curl.so
extension = mcrypt.so

2.到文末的下载地址里下载Rabr-Glype的源码。
  1)按照提示修改.\lib\config.php文件的Oauth参数,站点参数,以及可选参数
  2)修改.\g\plugins\YOUR_SITE.php 为你的站点的名字,例如:假设你的站点为http://xx.yy.com/zz/,则将 YOUR_SITE.php重命名为 yy.com.php 即可。
  3)本步骤可选,如果你想具有URL后直接输入用户名转到用户界面功能,同上假设你的站点地址,则用记事本打开修改 user.php 为 zz/user.php ,status.php同理;假如觉得麻烦,可以直接删除该文件,不影响程序运行。

3.上传,这里假设上传到http://xx.yy.com/zz/,进入http://xx.yy.com/zz/g/admin.php,输入任意的用户名和密码(记不住也没关系,只用一次),进入后选择Edit Setting,作如下设置:

URL Encoding Options => Use path info: Yes
Hotlinking => Prevent hotlinking: No
User Configurable Options =>
Encode URL: On Force打勾
Remove Page Titles: On Force打勾

4.完成,直接进主页,选择Sign in,如果空间没有问题的话,可以看到一个被代理出来的twitter登陆界面,在这里输入用户密码即可。

5.祝大家上推开心,上推并不是为了什么宏大而感人的口号,选择上推,只是选择了一种喜欢不受太多拘束的生活方式。

附:Rabr-Glype源码下载地址:

下载地址1(Dropbox HTTPS下载,需登录)
下载地址2(SkyDrive,请勿用迅雷下载)

10 comments:

  1. 博主你好,我在alwaysdate注册了一个空间,但登陆rabr后,在update页面会有这样的错误。请问你什么地方出问题呢?
    Notice: Undefined variable: count in /home/xx/t/all.php on line 206

    Notice: Undefined property: stdClass::$retweeted_status in /home/xx/t/all.php on line 209

    Notice: Undefined property: stdClass::$retweeted_status in /home/xx/t/all.php on line 209

    Notice: Undefined property: stdClass::$retweeted_status in /home/xx/t/all.php on line 209

    Notice: Undefined property: stdClass::$retweeted_status in /home/xx/t/all.php on line 209

    Notice: Undefined property: stdClass::$retweeted_status in /home/xx/t/all.php on line 209

    ReplyDelete
  2. 最后一句话“请问你什么地方出问题呢?”,应该是请问一下这是什么地方问题呢??

    ReplyDelete
  3. 最近因为世界杯的缘故,Twitter的服务器端过载很严重,这个是属于无法与Twitter服务器连接而导致的getTwitter函数无法初始化对象错误。大概刷一下能好的。

    ReplyDelete
  4. 我这里每次打开updates页面都会有这段错误。但其他页面则正常。晕了。。。你没这个问题??

    ReplyDelete
  5. 真没有也~~~你Logout了没有?

    ReplyDelete
  6. 反复试了很多次,rabr都是会出错。最后用twitese,并修改为自建的oauth api登陆才不会有这些错误。

    ReplyDelete
  7. 那实在没有办法了,我这里倒是一切正常,用的代码和放出来的没有什么改动(自己的加了一个htaccess方便查询用户而已)Twitese也是不错的,而且还有人维护,我只是实在不喜欢他的界面而已;Rabr可能不会再更新了,或者更新了也不会放在Code上,Sigh~

    ReplyDelete
  8. 你文中的地址全部不能下载,请问哪里能下载到源码?或者email我一份,谢谢 job.liu#gmail.com

    ReplyDelete
  9. 链接已更新,下载地址2应该有效。

    ReplyDelete
  10. Deprecated: Function eregi() is deprecated in /home/fredptc/www/lib/mobile_device_detect.php on line 48

    Deprecated: Function eregi() is deprecated in /home/fredptc/www/lib/mobile_device_detect.php on line 48

    Deprecated: Function eregi() is deprecated in /home/fredptc/www/lib/mobile_device_detect.php on line 55

    Deprecated: Function eregi() is deprecated in /home/fredptc/www/lib/mobile_device_detect.php on line 62

    Deprecated: Function eregi() is deprecated in /home/fredptc/www/lib/mobile_device_detect.php on line 69

    如上错误
    如果选择代理oauth,则有如下错误
    Parse error: syntax error, unexpected $end in /home/fredptc/www/g/includes/init.php on line 461

    ReplyDelete

Related

Related Posts with Thumbnails