开源 php版twitese

2009-10-28

推特中文圈

暑假完成了推特中文圈,放在GAE上,大家的反响挺好,呼吁开源的人也很多,但我一直没开源,这里写了我开源的顾虑。

好像是10月14日那天,众多twitter第三方web客户端都被封了,itweet dabr twitzap 等,还有推特中文圈。被封的时候其实我挺平静的,因为如果要禁twitter,不封推特中文圈实在没道理,早有心理准备。

其实我还没完全了解他们封的是什么,我本来以为封了IP,没戏了,有一天一推友告诉我说用一个新域名绑定到twitese,就能继续免翻墙打开了。试过后,果真如此:http://t.webbang.net,到写这篇博客为止,这个地址还能访问。看来他们封的只是twitese.appspot.com这个网址?不过ghs.google.com的很多IP都被封了,仅剩下几个残种,不知道ghs.google.com有多少个IP,要是少的话,还是不要用twitter应用摧残GAE了~

开源GAE版的twitese无济于事,再怎样都是放在GAE上,只会更加摧残GAE,于是10月23日我开始动手写php版的twitese,希望开源后网友们能把twitese架设在多个不同的php主机上,躲避功夫网的封锁。

用另一种语言重写一个网站比想象中要容易,至少前端几乎不用改。php版的twitese与GAE版的几乎完全一样,随便看看与排行榜是通过GAE版的twitese开放出API进行调用,由于怕原版的twitese流量不足,所以另开了一个GAE重新抓取数据,所以开放出来的用户数据量没有原版的twitese那么多,随便看看里的更新也没原版那么频繁,但应该已经足够了。

开源

对开源协议没有了解多少,简单的说大家修改twitese是没有限制的,也不要求修改过后的twitese同样要开源。这次发布得有点仓促,小错误应该挺多,大家碰到的话可以在这里提一下~希望有热心的人能一起改进twitese~

开源项目主页:http://code.google.com/p/twitese/(因被墙,改为http://tuite.googlecode.com)

预览:http://twitese.webbang.net/

特点

1.相对于dabr,twitese对php空间要求低

dabr对php空间要求如下:

* PHP 5.2+
* curl PHP module
* mcrypt PHP module
* mod_rewrite apache module

而twitese只需要curl PHP module,另外我在本地测试的php版本是5.2.6,没有在其他版本的php上测试过,应该问题不大。

2.twitese主要是作为web客户端,但完整支持手机ucweb浏览,网页上JavaScript的各种操作都留有后路,即使浏览器禁用JavaScript也能正常使用,所以对不太支持JavaScript的手机浏览器也是友好的。

3.twitese可以架设在国外空间,也可以架设在国内空间,只需修改twitter api为未被封的api proxy即可。

待增加的功能

1.OAuth认证:本来是想一开始就做的,由于有其他事情要做,精力有限,就暂时没有这个功能了。不过对于中国用户来说,这个功能可有可无,因为需要翻墙。

2.短网址:目前还没有提供短网址功能,待增加~

安装教程

下载源文件:
方法一:通过SVN工具下载:http://twitese.googlecode.com/svn/trunk/ 此下载方法可以保证下载的是最新的程序。
方法二:进入项目主页 点击右边的Featured downloads下载压缩后的源程序。此方法不保证下载到最新的程序。
(目前程序不稳定,随时会更新错误,请使用SVN工具下载确保得到最新程序)

下载后,打开lib/config.php,按上面的说明修改一些参数,修改完后,传到php空间,就能使用了。

//加密用户名密码用的密匙,请随便输入一字符串
define('SECURE_KEY', 'webbang');
//twitter api地址,如果是国外空间,请用http://twitter.com,国内空间需要用第三方API proxy
define('API_URL', 'http://twitter.com');
//twitter search api地址,同上。
define('SEARCH_API_URL', 'http://search.twitter.com');
//“随便看看”与“排行榜”的api地址,由架设在GAE的twitese提供,目前只有这一个地址可用,以后再开放相关源码。
define('TWITESE_API_URL', 'http://twiteseapi.webbang.net');
//网站名称
define('SITE_NAME', '推特中文圈');
评论

*

*

2010年1月13日 22:36

请教博主,我在德国的空间建的推特中文圈,网址tuite.24.je,但是默认的编码不支持中文,打开后乱码,要手动设置浏览器的编码是utf-8,才可以准确显示,怎样修改?

2010年1月17日 12:56

小声问一句:那个羊城网怎样进去啊?要密码啊

2010年1月19日 12:50

谢谢,,请联系,希望技术上能合作

2010年1月19日 21:57

很好很强大。。 过来支持一下。

2010年1月20日 8:49

感谢开源,正在研究中……

2010年1月25日 23:34

我的站可以了,就是随便看看没数据,我看了别人的他们的有

2010年2月8日 10:25

生在兲朝本身就是一种悲剧。

2010年2月12日 18:40

个人设置

Fatal error: Call to a member function showUser() on a non-object in /usr/virtual/yrcx2/delbert.org.ru/public_html/twitter/setting.php on line 43

2010年2月26日 10:42

这样会影响域名被封吗?

2010年2月27日 21:24

Fatal error: Call to undefined function fetch_url() in /home/zhaosha1/public_html/shenli_twitter/lib/twitter.php on line 849
空间是在justhost 应该是支持curl的

[…] 推特中文圈对空间要求很低,基本一般的空间都可以安装,加入你的程序出错,一般情况都是空间问题(垃圾空间上害人啊),可以去 @bang590 的博客进行咨询:http://blog.webbang.net/?p=1000 […]

2010年3月12日 13:42

谢谢你,给大家贡献这么好的程序,再次感谢!!

2010年3月26日 3:41

好东西,回头自己也架设个。

2010年4月4日 12:58

嗯嗯,我也自己搭建了很多哦

2010年4月5日 21:39

好,我也去架设一个,妈的,看GFW怎么封。

2010年4月21日 15:34

下载源文件时,看到方法一通过SVN工具下载,能否提供一个SVN工具?网上搜索的有点不敢下载。谢谢!

2010年4月25日 0:05

首先谢谢Bang为我们做的贡献~!
我想问下,电信访问你的推特中文圈 比 网通反应慢,而且还老是连不上,是不是有这个问题??

2010年4月27日 20:56

bang为我们为我们的网络自由做了这么大的贡献,谢谢!

[…] 如何搭建:国外空间可以将下载的文件上传就OK了;国内的空间需要修改一些文件,详情请移步这里。 […]

2010年5月16日 12:25

更新建议:(1)有新@、新DM未读时可以在侧边栏对应的地方加提示。(2)时间线有新推时,借鉴腾讯微博的提醒方式,而不是这样全部自己出来,要不是读着一条推,但有新的自己弹动,还不一定能找回来。

2010年6月2日 23:32

天亮啦。。。

2010年6月21日 19:35

不错,无条件支持。。。

2010年6月27日 14:26

才看到,这个一定要支持

[…] Engine搭建自己的API Proxy了,现在写的是搭建@yegle 的php的 twip 和@bang590的php twitese. 先说下大致流程,其实很简单: 1.申请域名,可以申请一些免费的二级域名. […]

[…] twip 和 twitese 上传到空间。 什么是twip? twip = Twitter + Proxy + PHP 项目主页在这里: […]

2010年7月19日 21:38

真是好东西,专门过来感谢bang老师!

[…] 和twitese 都很小.流量的话就看有多少人用,和你使用的频率了,一个月10G应该够了吧. […]

2010年8月10日 10:53

我想上推特,但为什么只有登录,没有办法注册呢?谁能帮帮我拜托!

2010年9月1日 15:28

开源了真不错。

2010年9月9日 23:56

Good article, Every and Every Stage is Excellent enough.Many thanks for sharing with us your wisdom.

2010年10月6日 22:58

这个网给我提供的最有利和最大的用处是什么?我可以利用这个网来干什么呢?有好心人可以回答一下。

2010年10月29日 2:45

请大家帮助我注册一个推特帐号谢谢

2010年11月15日 11:17

请问架设好之后,点击登录,却弹出“无法连接到 Twitter.请刷新页面或重试.”这是什么原因呢

2010年11月25日 22:56

本來可以不翻牆的,現在有點麻煩。

2010年11月27日 16:01

config.php是乱码,怎么传到PHP?

[…] 根据推特中文圈作者的文章“开源 […]

2011年2月20日 14:30
2011年2月20日 15:26

我自己架设了 Twitese(临时地址 http://bit.ly/eK1txD ),体验后意见如下:
首先,打开主页很慢(点击别人的 profile 和“随便看看”等都很快),在我的那个页面上甚至需要两、三分钟之后才能显示出自己的 Timeline,估计是用户名密码的验证在浪费时间,实际上执行一次再缓存就行了。
第二,希望整个网站使用 Ajax 做前台,像 Twitter 原网站一样(几乎在切换网页时无刷新,所有提交内容放在地址栏的 # 后面,交给 JavaScript 处理)。最好的方法是使用 JavaScript 从服务器上读取数据,一可以提高访问速度,第二可以制造很漂亮的交互效果。
第三,希望能把翻页功能改成“把网页翻到底部会自动加载第二页”,这符合 Web 2.0 风格(Twitter、新浪微博、腾讯微博都是这样的),同时在一定程度减缓服务器和客户端的一些负担。

2011年2月20日 15:34

再说一句,希望整个网站经过特殊的处理(比如使用 JavaScript 输出主页,或者使用 style=”display: none” 的隐藏文字来避开敏 感字词,),总之避免搜索引擎蜘蛛抓到(墙打出头鸟么)。

2011年2月20日 15:38

其实可以看看 Twitter 官方网站的做法:
在本次登录后新增加的那些推和上次的推之间画上一条黑色的横线隔开(不是很明显的,但是仔细看能发现)

2013年7月31日 13:24

メンズ水着 迷彩