让Twip支持UberTwitter老版本

17 2 月, 2014

去年5月份前@yegle更新的Twip版本在O模式里也调用了$this->uri_fixer()函数,因此用“修正对API1.1的支持”增加$replacement数组的替换项就可以支持UberTwitter v0.971了,因为新的API不再支持replies.json和mentions.json。

今天使用“get clone https://github.com/twip/twip”取到最新的源码,UberTwitter里仍用O模式就发现做了$replacement数组的替换还是刷不了@消息,仔细查看代码才发现O模式的override_mode()函数里不再调用$this->uri_fixer()函数了,只好自己修改代码了,在第189行处插入以下代码:
[php]
$replacement = array(
‘mentions.json’ => ‘mentions_timeline.json’,
‘replies.json’ => ‘mentions_timeline.json’,
);
$forwarded_request_uri = str_replace(array_keys($replacement), array_values($replacement), $this->forwarded_request_uri);
[/php]

并把其后的两处$this->forwarded_request_uri变量替换成$forwarded_request_uri即可支持UberTwitter:
[php]
$filterName = Twip::encode_uri($forwarded_request_uri);
$parts = parse_url($forwarded_request_uri);
[/php]

更新的twip.php文件参见本地:twip.php.txt,替换时把后缀.txt去掉。

另外提一下在Nginx配置文件里的重定向处理方法,假设twip部署在http://youdomain.com/twip目录,除了config.php的配置成“define(‘BASE_URL’,’http://youdomain.com/twip/’);”外,还需要修改ngix.conf,添加下面几行:
[text]
location /twip {
if (!-e $request_filename) {
rewrite ^/twip/(.*)$ /twip/index.php last;
}
}
[/text]

如果目录有变化,请对应修改上的twip部分。

原VPS不给力又给换了一个

15 2 月, 2014

之前在用还没到期的VPS是Virpus厂家的,目前还有两个512M的Xen VPS到4月份左右才到期,其中一个年付的两个IP已经被墙,已经丢弃,另一个是半年付,也是双IP的,但访问速度实在不啥的。

目前在用的是LocVPS的512M Xen VPS,双核,一个IP,10GB的SSD硬盘,使用起来速度比较Virpus的好很多,当然价钱也差不多贵一倍,用6折永久优惠码(40OFF)月付是37.2元RMB,在可接受范围内。

目前已经迁移完毕。经过多次有VPS迁移,经常出现在线下载的源程序包因升级或别的原因不存在了,所以这次修改了脚本改从本地取源程序包,并把用过正常的源程序包打包起来放在需要的地方,以方便下次安装。网页脚本则使用Dropbox进行备份

LocVPS的推荐链接:http://my.locvps.com/page.aspx?c=referral&u=17581,或在注册时填上我的编号17581,推荐注册有5%的提成。

PHP强制刷新图片的方法

12 2 月, 2014

在编写PHP自动处理脚本时可能会遇到需要输入验证码的情况,比如我在写淘宝店铺助手时就要求登录时必须输入验证码。解决办法是增加一个专用登录页面,在登录时如果遇到需要输入验证码的情况就通过curl使用同一个cookie在同一session下从目标服务器取到验证码保存成本地图片,然后在专用登录界面显示该验证码图片让用户输入对应的验证码,再提交完成登录,登录结果自动保存在cookie里,之后使用同一cookie在同一session里使用就不再需要登录。

为了方便管理,每次登录时都保存成images/checkcode.jpg,在专用登录界面如果使用常规方法<img src=”images/checkcode.jpg”>显示验证码图片,浏览器会优先从缓存读取图片来显示,这样用户看到的是旧的验证码图片,解决办法是在jpg文件后加随时间变化的参数,比如“日时分秒”数值:
[php]
$content = getContent($checkcode_url);
file_put_contents(‘images/checkcode.jpg’, $content);
echo ‘<form action=”login.php” method=”post”><img src=”images/checkcode.jpg?’ . date(‘dHis’) . ‘” width=”100″ height=”30″ border=”1″> <input name=”checkcode” type=”text” size=”8″> <input type=”submit” name=”Submit” value=”提交”></form>’;
[/php]

配置使用cookie的脚本:
define(‘COOKIE_FILE’, ‘tbcookie’);
curl_setopt($ch, CURLOPT_COOKIEJAR, realpath(COOKIE_FILE));
curl_setopt($ch, CURLOPT_COOKIEFILE, realpath(COOKIE_FILE));

“kies不支持当前的连接模式”解决办法

17 1 月, 2014

安装Kies后连接手机,提示 在samsung kies (PC studio)模式下从新连接设备,kies不支持当前的连接模式”。

解决办法:

1. 手机上操作:应用程序-设定-应用程序-开发-USB调试 前的勾去掉!这步很重要!!

2. 卸载Kies。

3. 连接三星手机到电脑。

4. 进入设备管理器,找到三星手机,卸载驱动。

5. 断开三星手机和电脑的连接,重启手机。

6. 电脑重新安装Kies,安装完后选择安装驱动。

7. 重启电脑,连接三星手机到电脑,运行Kies。

Nexus 7二代解锁教程

13 12 月, 2013

Nexus 7二代解锁教程

1、安装Android SDK (http://developer.android.com/sdk/index.html),其实你只需要 fastboot.exe 和 adb.exe (点击这里下载),将其放到特定目录,这里将以放到了C:\adb为例 (在C盘根目录下创建adb目录);
2、安装 Google USB 驱动 (http://developer.android.com/sdk/win-usb.html),XP可参考“给XP安装Nexus 7的驱动”;
3、在n7二代上开启USB调试; (点击平板上的“设置”选项,选择最下面的“关于平板电脑”,然后连续点击“版本号”7次以后唤醒开发者模式,然后后退点击开发者选项把“USB调试”打开。)
4、用命令提示符进入C:\adb(记住这里放有你的fastboot.exe 和 adb.exe);
5、然后输入命令:adb reboot bootloader;
6、当n7二代进入bootloader后, 在电脑的同一命令提示符里输入:fastboot oem unlock;
7、在n7二代上用音量“+”键来选择Yes,并按电源键确认;
8、当n7二代上状态显示 Unlocked 后,再用音量键选择到”Start” ,然后用电源键确认。
然后,二代Nexus 7设备就成功解锁了,接下来可以继续ROOT工作了。

Read the rest of this entry »

Ubuntu下配置Lantern Server图例

9 12 月, 2013

照着Lantern部署Server的方法折腾Ubuntu下无界面服务运行方式,虽然取到refresh_token参数,但实际以服务方式运行时总是提示认证失败,这里把操作过程记录成截图,供大家参考。编译Lantern需要先安装jdk和apache maven,参见上一篇“Linux下编译Lantern的准备”。

1. 首先进入主文件夹,点“编辑->首选项”进入文件管理首选项,钩上“显示隐藏和备份文件”,这样才能看到.lantern等隐藏目录:

Read the rest of this entry »

Linux下编译Lantern的准备

3 12 月, 2013

编译Lantern需要安装JDK和maven,安装JDK的方法参见上一篇文章:Ubuntu配置Lantern方法

下面是我安装maven的脚本,仅供参考:

[bash]
#!/bin/bash

cd /opt
mvnver=apache-maven-3.1.1
wget http://www.bizdirusa.com/mirrors/apache/maven/maven-3/3.1.1/binaries/$mvnver-bin.tar.gz
tar -zxvf $mvnver-bin.tar.gz

rm -f $mvnver-bin.tar.gz
rm -fr apache-maven
ln -s $mvnver apache-maven

echo “export M2_HOME=/opt/apache-maven” >> /etc/profile
echo ‘export PATH=$PATH:$M2_HOME/bin’ >> /etc/profile
source /etc/profile
mvn -v
[/bash]

Ubuntu配置Lantern方法

3 12 月, 2013

Ubuntu桌面版可以到这里下载:http://www.ubuntu.com/download/zh-CN

Lantern是谷歌的开源程序,官方主页是:https://getlantern.org/#zh_CN,开源主页是:https://github.com/getlantern/lantern/wiki

1. 下载JDK1.7
这里 下载JDK1.7 Linux rpm版本

2. 安装alien,使用alien把rpm包转换为deb包
sudo apt-get install alien

3. 转换并安装JDK1.7
sudo alien jdk-7u45-linux-x64.rpm
sudo dpkg -i jdk-7u45-linux-x64.deb

Read the rest of this entry »

转:Linux下curl命令行浏览器

28 11 月, 2013

来源:http://hi.baidu.com/oyvfhp/item/747ecf16e4619c3ab83180ff

CURL — 命令行浏览器

这东西现在已经是苹果机上内置的命令行工具之一了,可见其魅力之一斑

1) 二话不说,先从这里开始吧!

curl http://www.yahoo.com

回车之后,www.yahoo.com 的html就稀里哗啦地显示在屏幕上了~~~~~

2) 嗯,要想把读过来页面存下来,是不是要这样呢?
curl http://www.yahoo.com > page.html

当然可以,但不用这么麻烦的!
用curl的内置option就好,存下http的结果,用这个option: -o
curl -o page.html http://www.yahoo.com

这样,你就可以看到屏幕上出现一个下载页面进度指示。等进展到100%,自然就OK咯

Read the rest of this entry »

VMWare虚拟机压缩

21 11 月, 2013

参考来源:http://www.ha97.com/773.html

步骤:

1. 在虚拟机里,打开我的电脑,右击盘符选属性,切换到工具标签,点磁盘碎片整理完成操作,对其它分区也一样的处理。

2. 在虚拟机里,打开控制面版,双击打开VMWare Tools,切换到压缩标签,钩选需要压缩的分区进行压缩

3. 关闭虚拟机,运行VMWare程序或Player,选择对应的虚拟机进入编辑界面,选择硬盘,对VMWare磁盘进行碎片整理

4. 关闭虚拟机和VMWare程序,在主机里,打开我的电脑,右击虚拟机所在的分区选属性,切换到工具标签,点磁盘碎片整理完成操作。

我只用前两步能把一个用了比较长时间的虚拟机压缩掉大于60%的空间。