imagoxy:sswv的救赎

来源:牧码志

前天的事情发生后,sswv同学祭出了imagoxy,成为访问PicasaWeb图片的一种很好的服务器端解决办法(客户端解决办法为翻墙或修改hosts)。

简单地说,imagoxy是一个跳板,你应该把它放置在一个能访问PicasaWeb的PHP站点上(当然肯定得是国外空间了),并且保证这个站点在国内是可访问的。说到这里应该很清楚了,当你需要访问Picasa上的图片时,你把要访问的图片的URL地址发送给imagoxy,然后它负责图片的获取和回传。

imagoxy的安装很简单,首先修改imagoxy文件夹下的getimg.php,将变量"$work_dir"的值修改为imagoxy文件夹上传后的URL地址,如:

注意最后的反斜杠不能省略。

然后修改数组"$reffer_list",设置其元素为所有被允许使用imagoxy的站点的域名,如:

然后将文件夹imagoxy上传到服务器并设置imagoxy下的cache目录为可写。

imagoxy允许两种参数,分别为"s"和"u"。前者后跟PicasaWeb上的图片的URL地址,后者后跟base64加密、然后反转字符串、最后再urlencode所得到的一个字符串。

sswv同时提供了一个WordPress的插件──"imagoxy-wp",用以将文章中的PicasaWeb图片的URL自动替换成使用imagoxy跳板访问的URL。

安装imagoxy-wp前先修改imagoxy-wp.php,将函数"imagoxy_wp_convert"内的局部变量"$imagoxy_dir"的值修改为上面imagoxy安装后的URL地址,如:

PHP:

然后上传并激活即可。

imagoxy会将每一张被请求过的图片缓存到cache目录中,并且以后再有对这些图片的请求时,直接读取缓存。和直接使用原图片URL相比,如 果把imagoxy安装在博客所在的虚拟主机中,就会增加主机空间和流量的占用,不过对于一般的站点,图片数和访问量都不大,因此应当不成问题;退一步, 也可以把imagoxy安装到其它的虚拟主机中(国外有很多免费的PHP虚拟主机),这样上面的问题就不存在了,这也是sswv同学的高明之处。

PS: 今天才发现FriendFeed也被墙了,虽然这是我早就料到的,但不免还是一阵悲凉。当初选择饭否, 一个原因就是我觉得FriendFeed、Twitter这些东西迟早要被墙,但我忽略了国内的服务其实更脆弱的事实,我觉得既然那些人口口声声说现在是 法制社会、市场经济,那么对于一个完全市场运作的公司,只要人家不犯法,他们总不至于做得太过火。事实证明我把那些人想象得太善良了,这次居然连"维护" 都懒得做了。草民望阙再拜,谢主隆恩!


没有评论: