自从feedburner被河蟹之后,内地用户就没法看到那个fancy的feedburner计数器了,不过…Look at my site, I’ve brought it to earth! 原理很简单,利用国外的远程主机先在远程主机上获取feedburner的计数图片并保存在远程主机上,然后相应的修改feedburner的图片地址为保存在主机上的就行了。

我利用的是php方式来实现获取图片功能,代码如下 (其实我还是个php beginner,获取文件的代码是google来的)

<?php
function get_feedburner($url) {

        //Initiate the curl //
	$ch = curl_init();

	//Set the curl option//
	curl_setopt ($ch, CURLOPT_URL, $url);
	curl_setopt ($ch, CURLOPT_HEADER, 0);
	
	ob_start();
	
        //Lets get the file//
	curl_exec ($ch);
	curl_close ($ch);

        //Retrieve the file got from the remote url//
	$string = ob_get_contents();
	ob_end_clean();	
	return $string;
}

$content = get_feedburner("http://feeds.feedburner.com/~fc/punkid?bg=BCF16C&fg=404040&anim=0");
$fp=fopen("feedburner.jpg", "w");
fwrite($fp, $content);
fclose($fp);
?>

保存代码到get_feedburner.php文件中,其中get_feedburner()中的地址是你的feedburner计数器图片地址,而fopen()里是你将要保存到远程主机的图片名。想知道这个script到底有用不? ssh到远程主机执行php get_feedburner.php,然后用浏览器查看下保存的图片地址就知道了。

然后我们要做的是让这个script每天执行一次 (feedburner每天更新一次计数器数据),ssh到远程主机运行crontab -e,添加如下一行:

01 9 * * * /usr/local/bin/php home/path/get_feedburner.php #请替换为你的get_feedburner.php保存地址。

这个cron job指示远程主机在每天9点01分时运行一次该script。为什么是9点捏? 我用的DH主机和我们这时差15个小时!

最后你要做的就是更改feedburner的计数器图片地址为你的主机上的图片地址吧。

3 Reponses So Far ↓

  1. Sleepa:

    有什么办法不用代理可以直接使用Feedburner?我的阅读器里的feedburner托管的文章一转到原页面时就被wall了

  2. punkid:

    只能指望feed owner在Feedburner Stats里取消Item link clicks,这样就不会经feedburner的转链了。

    P.S: Sleepa大哥,如果你下次继续使用fake e-mail address的话,我不会再从spam box里给你despam了。

  3. Sleepa:

    这样的可以了吧?:)

Leave a Reply ↓