<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Jeff Cai的流水账 &#187; 技术</title>
	<atom:link href="http://www.jeffcai.com/archives/category/%e6%8a%80%e6%9c%af/feed" rel="self" type="application/rss+xml" />
	<link>http://www.jeffcai.com</link>
	<description>流水偶的生活，污染你的眼睛    －－   一个IT民工的生活存档</description>
	<lastBuildDate>Sat, 29 May 2010 01:50:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>广东电信宽带HTTP劫持的简单分析</title>
		<link>http://www.jeffcai.com/archives/148</link>
		<comments>http://www.jeffcai.com/archives/148#comments</comments>
		<pubDate>Sun, 22 Nov 2009 08:00:52 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/?p=148</guid>
		<description><![CDATA[之前就知道电信干这个龌龊的事情，那时候据说用的是DNS劫持。Okay,我换OpenDNS。 最近浏览php.net查资料，发现电信的广告还是纷至沓来…… 无语之后，默默打开WireShark一探究竟。 发送请求： GET /manual/en/language.oop5.references.php HTTP/1.1 Host: www.php.net User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091109 Ubuntu/9.10 (karmic) Firefox/3.5.5 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive Referer: http://www.php.net/manual/en/langref.php? 回应： HTTP/1.1 200 OK Server: Apache/2.0.43 (Unix) Content-Type: text/html Expires: Thu, 01 Jan 1970 08:00:01 GMT Cache-Control: private Cache-Control: no-cache [...]]]></description>
			<content:encoded><![CDATA[<p>之前就知道电信干这个龌龊的事情，那时候据说用的是DNS劫持。Okay,我换OpenDNS。<br />
最近浏览php.net查资料，发现电信的广告还是纷至沓来……<br />
无语之后，默默打开WireShark一探究竟。</p>
<p>发送请求：</p>
<blockquote><p>GET /manual/en/language.oop5.references.php HTTP/1.1<br />
Host: www.php.net<br />
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.5) Gecko/20091109 Ubuntu/9.10 (karmic) Firefox/3.5.5<br />
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8<br />
Accept-Language: en-us,en;q=0.5<br />
Accept-Encoding: gzip,deflate<br />
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7<br />
Keep-Alive: 300<br />
Connection: keep-alive<br />
Referer: http://www.php.net/manual/en/langref.php?</p></blockquote>
<p>回应：</p>
<blockquote><p>HTTP/1.1 200 OK<br />
Server: Apache/2.0.43 (Unix)<br />
Content-Type: text/html<br />
Expires: Thu, 01 Jan 1970 08:00:01 GMT<br />
Cache-Control: private<br />
Cache-Control: no-cache<br />
Transfer-Encoding: chunked<br />
Connection: close<br />
Date: Sun, 22 Nov 2009 14:59:02 GMT</p>
<p>2d2<br />
&lt;html&gt;&lt;body scroll=&#8217;no&#8217; style=&#8217;border:0; margin:0; padding:0;&#8217; id=&#8217;mainbody&#8217;&gt;&lt;iframe src=&#8217;about:blank&#8217; width=&#8217;100%&#8217; height=&#8217;100%&#8217; frameborder=&#8217;0&#8242;&gt;&lt;/iframe&gt;&lt;script src=&#8217;http://121.32.136.21:1010/open.js&#8217;&gt;&lt;/script&gt;&lt;script&gt;var content=&#8217;http://gd.ct10000.com/yxhd/zp0911.htm?p=1258873142|10619183|2275|850|0|0&amp;param=ABioyajZGekprCmIW7rLPMyMnMx87Hxr/OyczRmJvZj5CTlpyGlpvCzc3IytmMkIqNnJqKjZPCiIiI0Y+Xj9GRmovQkp6Rip6T0JqR0JOe&#8217;;var old_url=&#8217;http://www.php.net/manual/en/language.oop5.references.php?&#8217;;var param=&#8217;350|250|9&#8242;;var stat_path = &#8216;http://121.32.136.2/stat.aspx?p=1258873142|10619183|2275|850|0|0&#8242;;try{OpenWin()}catch(e){location.reload(true)}window.setInterval(&#8216;window.status=location.href&#8217;, 200)&lt;/script&gt;&lt;/body&gt;&lt;/html&gt;<br />
0</p>
<p>.<br />
&lt;style type=&#8221;text/css&#8221; media=&#8221;print&#8221;&gt;<br />
@import url(&#8220;http://static.php.net/www.php.net/styles/print.css&#8221;);<br />
&lt;/style&gt;<br />
&lt;!&#8211;[if IE]&gt;&lt;![endif]&gt;&lt;![endif]&#8211;&gt;</p>
<p>&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;&#8230;.&lt;省略&gt;</p></blockquote>
<p>发现：</p>
<ol>
<li>HTTP回应头部被插入脚本执行语句。</li>
<li>貌似再插入了HTTP分段&#8221;Transfer-Encoding: chunked&#8221;，原有内容至于一个空段后，貌似会被抛弃。从Firefox的源代码看来，就是只有脚本的内容了。</li>
</ol>
<p>查看脚本内容(http://121.32.136.21:1010/open.js)：</p>
<pre id="line1">function OpenWin()
{
	getParams();
	calPosition();

	<span style="color: #ff0000;">var h = window.open(content, "_blank", styles +
		" directories=0, location=0, " +
		"menubar=0, resizable=0, scrollbars=0, status=0, titlebar=0, toolbar=0");
</span>
	if (h)
	{
		var img = new Image();
		img.src = stat_path;
		<span style="color: #ff0000;">location.href = old_url;</span>
		return;
	}
....</pre>
<p>恩，一手打开新窗口，一手继续重回旧窗口。很好。</p>
<h3>解决方法：</h3>
<p>貌似还没有很直接的方法。电信要插你，你无法拒绝。Okay，内容上浏览器也无法收到正式内容。唯一想到的办法就是加一个浏览器插件，检测回应内容，如果内容包含有插入广告语句，则重新请求页面……</p>
<p>有更好更懒方法的童鞋，楼下沙发请说。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/148/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>HDCOPY的IMG格式简析</title>
		<link>http://www.jeffcai.com/archives/125</link>
		<comments>http://www.jeffcai.com/archives/125#comments</comments>
		<pubDate>Tue, 21 Jul 2009 05:00:45 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/?p=125</guid>
		<description><![CDATA[HDCOPY乃DOS时代一猛将，遥记往昔，记得第一只光盘（好贵的哦，而且当然是盗版的）里面就是装满了IMG格式的磁盘镜像。一开始还要用磁盘一个个弄出来才能用，后来还好有各路好汉的软件，才可以直接解出来，免去磁盘之痛。 闲话不提了，最近针对一个应用需要解压这个老的磁盘格式IMG。一开始自己分析，没太多头绪。还好后来找到了DOSIMG这个工具，作者还提供了源代码，通读后终于摆平。想到可能还有类似痛苦的童鞋，所以在这里把格式简单写下来。 总体结构： IMG分为头部和数据区域两大部分。其中头部对于有HD1.7和HD2.0两种格式。 头部： HD2.0头部： 偏移(字节) 长度(字节) 描述 0&#215;00 2 0xFF 0&#215;18，格式识别标记 0&#215;02 1 磁盘标签长度 0&#215;03 11 磁盘标签，就是DISK Label，不够11字节的地方用空格0&#215;20填满 0x0E 1 最大Track号，从0开始。一般为79(DEC) 0x0F 1 每Track的Sector数目。对于3.5英寸的HD高密盘一般为18(DEC) 0&#215;10 168 Track是否有数据的标记数组。0为无数据，1为有数据。对应HDCOPY里面的绿点。Track0,Head0为第一个，Track0,Head1为第二个，如此类推…… 长度固定为最大84Track,2Head共168。 HD1.7头部： 其实就是没有了2.0格式的头三个数据。 偏移(字节) 长度(字节) 描述 0&#215;00 1 最大Track号，从0开始。一般为79(DEC) 0&#215;01 1 每Track的Sector数目。对于3.5英寸的HD高密盘一般为18(DEC) 0&#215;2 168 Track是否有数据的标记数组。0为无数据，1为有数据。对应HDCOPY里面的绿点。Track0,Head0为第一个，Track0,Head1为第二个，如此类推…… 长度固定为最大84Track,2Head共168。 数据区域： 数据区域紧接着头部，由若干的数据块组成。每个数据块包含一个Track的单面的所有Sector的内容，每个数据块都是经过简单压缩的。数据块以Track + Head的顺序排列，但不包括头部的Track标记数组里面标记为0的单面Track。下图中显示了Track2的两面（Head0,Head1)都为0的情况。 Track0, Head0 Track0,Head1 Track1,Head0 Track1,Head1 Track3,Head0 [...]]]></description>
			<content:encoded><![CDATA[<p>HDCOPY乃DOS时代一猛将，遥记往昔，记得第一只光盘（好贵的哦，而且当然是盗版的）里面就是装满了IMG格式的磁盘镜像。一开始还要用磁盘一个个弄出来才能用，后来还好有各路好汉的软件，才可以直接解出来，免去磁盘之痛。</p>
<p>闲话不提了，最近针对一个应用需要解压这个老的磁盘格式IMG。一开始自己分析，没太多头绪。还好后来找到了DOSIMG这个工具，作者还提供了源代码，通读后终于摆平。想到可能还有类似痛苦的童鞋，所以在这里把格式简单写下来。</p>
<h1>总体结构：</h1>
<p>IMG分为头部和数据区域两大部分。其中头部对于有HD1.7和HD2.0两种格式。</p>
<h2>头部：</h2>
<h3>HD2.0头部：</h3>
<table border="1" width="80%">
<thead>
<th width="120px">偏移(字节)</th>
<th width="120px">长度(字节)</th>
<th>描述</th>
</thead>
<tbody>
<tr>
<td>0&#215;00</td>
<td>2</td>
<td>0xFF 0&#215;18，格式识别标记</td>
</tr>
<tr>
<td>0&#215;02</td>
<td>1</td>
<td>磁盘标签长度</td>
</tr>
<tr>
<td>0&#215;03</td>
<td>11</td>
<td>磁盘标签，就是DISK Label，不够11字节的地方用空格0&#215;20填满</td>
</tr>
<tr>
<td>0x0E</td>
<td>1</td>
<td>最大Track号，从0开始。一般为79(DEC)</td>
</tr>
<tr>
<td>0x0F</td>
<td>1</td>
<td>每Track的Sector数目。对于3.5英寸的HD高密盘一般为18(DEC)</td>
</tr>
<tr>
<td>0&#215;10</td>
<td>168</td>
<td>Track是否有数据的标记数组。0为无数据，1为有数据。对应HDCOPY里面的绿点。Track0,Head0为第一个，Track0,Head1为第二个，如此类推……</p>
<p>长度固定为最大84Track,2Head共168。</td>
</tr>
</tbody>
</table>
<h3>HD1.7头部：</h3>
<p>其实就是没有了2.0格式的头三个数据。</p>
<table border="1" width="80%">
<thead>
<th width="120px">偏移(字节)</th>
<th width="120px">长度(字节)</th>
<th>描述</th>
</thead>
<tbody>
<tr>
<td>0&#215;00</td>
<td>1</td>
<td>最大Track号，从0开始。一般为79(DEC)</td>
</tr>
<tr>
<td>0&#215;01</td>
<td>1</td>
<td>每Track的Sector数目。对于3.5英寸的HD高密盘一般为18(DEC)</td>
</tr>
<tr>
<td>0&#215;2</td>
<td>168</td>
<td>Track是否有数据的标记数组。0为无数据，1为有数据。对应HDCOPY里面的绿点。Track0,Head0为第一个，Track0,Head1为第二个，如此类推……</p>
<p>长度固定为最大84Track,2Head共168。</td>
</tr>
</tbody>
</table>
<h2>数据区域：</h2>
<p>数据区域紧接着头部，由若干的数据块组成。每个数据块包含一个Track的单面的所有Sector的内容，每个数据块都是经过简单压缩的。数据块以Track + Head的顺序排列，但不包括头部的Track标记数组里面标记为0的单面Track。下图中显示了Track2的两面（Head0,Head1)都为0的情况。</p>
<table border="1">
<tbody>
<tr>
<td colspan="2">Track0, Head0</td>
<td>Track0,Head1</td>
<td>Track1,Head0</td>
</tr>
<tr>
<td>Track1,Head1</td>
<td>Track3,Head0</td>
<td colspan="2">Track3,Head1</td>
</tr>
</tbody>
</table>
<h3>数据块结构：</h3>
<table border="1" width="80%">
<thead>
<th width="120px">块内偏移(字节)</th>
<th width="120px">长度(字节)</th>
<th>描述</th>
</thead>
<tbody>
<tr>
<td>0&#215;00</td>
<td>2</td>
<td>数据长度，从0&#215;02算起，不包含本长度所占的2字节</td>
</tr>
<tr>
<td>0&#215;02</td>
<td>1</td>
<td>压缩扩展标记符。解压时，当遇到压缩扩展标记符，则当前位置+2为重复字符，当前位置+1为重复次数。例如0xFE为扩展标记符，则0xFE 0&#215;06 0xA0应该扩展为0xA0 0xA0 0xA0 0xA0 0xA0 0xA0</td>
</tr>
<tr>
<td>0&#215;03</td>
<td>可变</td>
<td>数据内容。当遇到压缩扩展标记符，则按上述规则进行扩展，否则为原来数据，直接输出。</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/125/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CuteQ Lib Kick Off</title>
		<link>http://www.jeffcai.com/archives/53</link>
		<comments>http://www.jeffcai.com/archives/53#comments</comments>
		<pubDate>Wed, 23 Jan 2008 16:36:02 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[CuteQ Lib Project]]></category>
		<category><![CDATA[QQ]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/archives/53</guid>
		<description><![CDATA[一直嚷嚷要搞，结果一直没动。直接发到网上好了，督促一下自己。以后每周要写一篇东东记录进度。 SF Project URL: https://sourceforge.net/projects/libcuteq 状态：0% 下周Target:了解登录的基本过程，完成心得一篇]]></description>
			<content:encoded><![CDATA[<p>一直嚷嚷要搞，结果一直没动。直接发到网上好了，督促一下自己。以后每周要写一篇东东记录进度。</p>
<p>SF Project URL: <a href="https://sourceforge.net/projects/libcuteq">https://sourceforge.net/projects/libcuteq</a></p>
<p>状态：0%</p>
<p>下周Target:了解登录的基本过程，完成心得一篇</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/53/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics Analyze(2)</title>
		<link>http://www.jeffcai.com/archives/13</link>
		<comments>http://www.jeffcai.com/archives/13#comments</comments>
		<pubDate>Wed, 23 Aug 2006 15:23:00 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/wordpress/?p=13</guid>
		<description><![CDATA[　　10:00才开始工作，10:30就要滚蛋，估计今天不能完成预定任务。　　今天真是堕落的日子，下午开会，遭遇下雨，一伙人外出腐败，回来联网极品飞车到刚才……　　无论如何，还是有点时间，先写部分吧。作为一个单部分还是不够分量的，明天继续修改好了。　　抓紧时间，说说进展。　　 1.都说做事要站在巨人的肩膀上，在网上继续搜集前人的研究成果，发现了以下的资源。　　 2.上了firefox的插件firebug，但还不怎么会用…… 　　打算按函数来逐步肢解分析这个脚本。urchinTracker明显是入口，就先不看。本来打算直接看下面的其他函数，发现若干不明意义的全局变量。em&#8230;先突破这些变量。　　 　　 var _uff, _udh, _udt, _ubl=0, _udo=&#8221;", _uu, _ufns=0,　　 _uns=0, _ur=&#8221;-&#8221;, _ufno=0, _ust=0, _ubd=document,　　 _udl=_ubd.location, _udlh=&#8221;", _utcp=&#8221;/&#8221;, _uwv=&#8221;1&#8243;; 　　var _ugifpath2=&#8221;http://www.google-analytics.com/__utm.gif&#8221;;　　 if (_udl.hash) _udlh=_udl.href.substring(_udl.href.indexOf(&#8216;#&#8217;));　　 if (_udl.protocol==&#8221;https:&#8221;) _ugifpath2=&#8221;https://ssl.google-analytics.com/__utm.gif&#8221;;　　 if (!_utcp &#124;&#124; _utcp==&#8221;") _utcp=&#8221;/&#8221;;　　 　　&#8212;-08.29 update&#8212;-　　命名规则：_u起头 _uff:初始为0，似乎是标记脚本是否被执行过用的。在主函数urchinTracker中的尾部设为1，urchinTracker头部检查此变量是否为1，是则退出。就是说，如果你错误地在两个地方都插入了这个代码，只有在头部的代码被执行。 _udh:根据domainName计算得出的Hash值，int。在urchinTracker中，_udh被_uDomain函数初始化。 _udn指定了domain。如果不修改，则默认情况是_udn=&#8221;auto&#8221;。auto表示，自动根据_udl获得domain。如 www.jeffcai.com，则会获得为jeffcai.com。Hash是采用比较经典的字符串Hash方法。 _udt: DateTime，载入的时候的时间日期 _ubl: 标记，1/0，放在if中，待定。 _udo:字符串，初始为空 _uu _ufns=0 _uns=0 _ur=&#8221;-&#8221; _ufno=0 _ust=0 _ubd: document对象 _udl: [...]]]></description>
			<content:encoded><![CDATA[<p>
<div class="content">
<p>　　10:00才开始工作，10:30就要滚蛋，估计今天不能完成预定任务。<br/>　　今天真是堕落的日子，下午开会，遭遇下雨，一伙人外出腐败，回来联网极品飞车到刚才……<br/>　　无论如何，还是有点时间，先写部分吧。作为一个单部分还是不够分量的，明天继续修改好了。<br/>　　抓紧时间，说说进展。<br/>　　 1.都说做事要站在巨人的肩膀上，在网上继续搜集前人的研究成果，发现了以下的<a href="http://blacksoul.cnblogs.com/archive/2006/05/19/404563.html">资源</a>。<br/>　　 2.上了firefox的插件firebug，但还不怎么会用……</p>
<p>
<p>　　打算按函数来逐步肢解分析这个脚本。urchinTracker明显是入口，就先不看。本来打算直接看下面的其他函数，发现若干不明意义的全局变量。em&#8230;先突破这些变量。<br/>　　 <blockcode type="javascript"><br/>　　 var _uff, _udh, _udt, _ubl=0, _udo=&#8221;", _uu, _ufns=0,<br/>　　 _uns=0, _ur=&#8221;-&#8221;, _ufno=0, _ust=0, _ubd=document,<br/>　　 _udl=_ubd.location, _udlh=&#8221;", _utcp=&#8221;/&#8221;, _uwv=&#8221;1&#8243;;</blockcode></p>
<p>
<p>　　var _ugifpath2=&#8221;http://www.google-analytics.com/__utm.gif&#8221;;<br/>　　 if (_udl.hash) _udlh=_udl.href.substring(_udl.href.indexOf(&#8216;#&#8217;));<br/>　　 if (_udl.protocol==&#8221;https:&#8221;) _ugifpath2=&#8221;https://ssl.google-analytics.com/__utm.gif&#8221;;<br/>　　 if (!_utcp || _utcp==&#8221;") _utcp=&#8221;/&#8221;;<br/>　　</p>
<p>
<p>　　&#8212;-08.29 update&#8212;-<br/>　　命名规则：_u起头</p>
<p>
<ul class="noindent">
<li>_uff:初始为0，似乎是标记脚本是否被执行过用的。在主函数urchinTracker中的尾部设为1，urchinTracker头部检查此变量是否为1，是则退出。就是说，如果你错误地在两个地方都插入了这个代码，只有在头部的代码被执行。</li>
<p>
<li>_udh:根据domainName计算得出的Hash值，int。在urchinTracker中，_udh被_uDomain函数初始化。 _udn指定了domain。如果不修改，则默认情况是_udn=&#8221;auto&#8221;。auto表示，自动根据_udl获得domain。如 www.jeffcai.com，则会获得为jeffcai.com。Hash是采用比较经典的字符串Hash方法。</li>
<p>
<li>_udt: DateTime，载入的时候的时间日期</li>
<p>
<li>_ubl: 标记，1/0，放在if中，待定。</li>
<p>
<li>_udo:字符串，初始为空</li>
<p>
<li>_uu</li>
<p>
<li>_ufns=0</li>
<p>
<li>_uns=0</li>
<p>
<li>_ur=&#8221;-&#8221;</li>
<p>
<li>_ufno=0</li>
<p>
<li>_ust=0</li>
<p>
<li>_ubd: document对象</li>
<p>
<li>_udl: document下的location对象</li>
<p>
<li>_udlh=&#8221;"，如果文档是分节的（用#那种），则这里是#后面的东东</li>
<p>
<li>_utcp:目录分隔符？基本上就是&#8221;/&#8221;</li>
<p>
<li>_uwv=&#8221;1&#8243;</li>
<p></ul>
<p></div>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/13/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Analytics Analyze(1)</title>
		<link>http://www.jeffcai.com/archives/12</link>
		<comments>http://www.jeffcai.com/archives/12#comments</comments>
		<pubDate>Tue, 22 Aug 2006 05:27:00 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/wordpress/?p=12</guid>
		<description><![CDATA[　　前一阵子找访问统计的服务，一开始找到了ITSUN，后来又碰到了Google Analytics。冲着Google的名义，怎么着也得试用一下。那时候还需要等候Invitation。不知道是不是比较幸运，没过2天就收到了邀请，而且还可以有10个profile。　　试用至今也一段日子了，和ITSUN比较，觉得图形分析方面比较强劲，另外也提供了很多目前还玩不转的报告……不过至今没有找到如何看来访IP，而ITSUN可以比较清晰地找到。　　有了帐号，当然也用于统计实验室网站的访问。不过随着使用，觉得其Profile中的设置讲得不明白，我现在还不清楚一个Profile如果放在别的网站上，那样算不算我的流量？因为实验室的网站分得比较散，虽然是同一个domain，不过还是不是很确定相册和wiki的统计会不会放在一起。而看了其帮助后，更是觉得神秘兮兮的，不甚了了。例如，其中提到，如果要在多个子域中用用一个profile，则需要加上一个什么变量……总之太多疑问了……　　所以，偶决定，开始解剖Analytics！你叫Analytics吗？我就analyze你。　　初步翻看帮助，知道其利用浏览器执行javascript脚本来执行统计的。所以第一步，当然是解读分析这个javascript脚本。　　脚本位置简单查看其提供的插入代码，可知是： http://www.google-analytics.com/urchin.js 　　打开，首先映入眼中的是 &#8220;Google Analytics Urchin Module&#8221;字眼。联想到其帮助提及Urchin用户云云，难道这个又是一个买回来的东东？google之，哈。果然不出所料，第一页就给出了车东的网页，提及这个事情，不过不甚清楚。进一步的搜索，终于看到了一条中文消息　　进一步的搜索，发现车东已经在5月份的时候初步分析了urchin.js（不过似乎没在网页上发布分析结果）。他更多地分析了Google推出这项服务的野心和用意，恩，不愧是雅虎的人。　　从初步来看，前部分是一些相对公开的变量，有着详细的注释。从 //-- **** Don't modify below this point *** 　　开始，就变量名就变得诡异起来，且没有任何注释。今天暂时到这，准备工具和手册，打算每天干上半个小时。呵呵，看看这个系列能写到多少。]]></description>
			<content:encoded><![CDATA[<p>
<p>　　前一阵子找访问统计的服务，一开始找到了ITSUN，后来又碰到了Google Analytics。冲着<a href="http://www.google.com/">Google</a>的名义，怎么着也得试用一下。那时候还需要等候Invitation。不知道是不是比较幸运，没过2天就收到了邀请，而且还可以有10个profile。<br/>　　试用至今也一段日子了，和ITSUN比较，觉得图形分析方面比较强劲，另外也提供了很多目前还玩不转的报告……不过至今没有找到如何看来访IP，而ITSUN可以比较清晰地找到。<br/>　　有了帐号，当然也用于统计实验室网站的访问。不过随着使用，觉得其Profile中的设置讲得不明白，我现在还不清楚一个Profile如果放在别的网站上，那样算不算我的流量？因为实验室的网站分得比较散，虽然是同一个domain，不过还是不是很确定相册和wiki的统计会不会放在一起。而看了其帮助后，更是觉得神秘兮兮的，不甚了了。例如，其中提到，如果要在多个子域中用用一个profile，则需要加上一个什么变量……总之太多疑问了……<br/>　　所以，偶决定，开始解剖Analytics！你叫Analytics吗？我就analyze你。<br/>　　初步翻看帮助，知道其利用浏览器执行javascript脚本来执行统计的。所以第一步，当然是解读分析这个javascript脚本。<br/>　　脚本位置简单查看其提供的插入代码，可知是：</p>
<p>
<blockquote>
<p>http://www.google-analytics.com/urchin.js</p>
<p></p></blockquote>
<p>
<p>　　打开，首先映入眼中的是 &#8220;Google Analytics Urchin Module&#8221;字眼。联想到其帮助提及Urchin用户云云，难道这个又是一个买回来的东东？google之，哈。果然不出所料，第一页就给出了车东的网页，提及这个事情，不过不甚清楚。进一步的搜索，终于看到了一条<a href="http://loverty.org/2005/03/urchingoogle.html">中文消息</a><br/>　　进一步的搜索，发现<a href="http://www.chedong.com/">车东</a>已经在5月份的时候初步分析了urchin.js（不过似乎没在网页上发布分析结果）。他更多地分析了Google推出这项服务的野心和用意，恩，不愧是雅虎的人。<br/>　　从初步来看，前部分是一些相对公开的变量，有着详细的注释。从</p>
<p>
<pre xml:space="preserve">//-- **** Don't modify below this point ***</pre>
<p>
<p>　　开始，就变量名就变得诡异起来，且没有任何注释。今天暂时到这，准备工具和手册，打算每天干上半个小时。呵呵，看看这个系列能写到多少。</p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/12/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>重拾Shibboleth/GridShib</title>
		<link>http://www.jeffcai.com/archives/4</link>
		<comments>http://www.jeffcai.com/archives/4#comments</comments>
		<pubDate>Sun, 02 Apr 2006 01:10:00 +0000</pubDate>
		<dc:creator>jeffcai</dc:creator>
				<category><![CDATA[技术]]></category>

		<guid isPermaLink="false">http://www.jeffcai.com/wordpress/?p=4</guid>
		<description><![CDATA[　　今天起重新认真研究Shibboleth和GridShib。上学期期末奉命安装GridShib。结果搞到放假前搞完了Globus的安装，而Shibboleth则一直没有进展。看来俺的毕业也就是靠他了，决心认认真真学习研究这个东西。 　 　目前第一步当然是安装配置起来，玩转一下，必要时读读代码也是需要的。下一步想法是把Shibboleth和学校的CAS 认证连接起来，然后把Shibboleth和另外一块任务“集群管理” 结合起来。再后来，建立Shibboleth联邦，向外推广？！（若能成事，老板肯定开心死了） 　　GridShib方面还不是太清楚可以怎么进展，留待以后写吧。 　　4.30就截稿的ChinaGrid摆在面前，能咬一口么？ 　　一些有用的网站：Install Shibboleth 1.3 Identity Provider on Debian 3.1 (sarge), Tomcat and Apache 　　www.switch.ch/aai下还有很多很有用的文档。感觉比Shibboleth官方的要直观很多。准备按照上面的文章安装Shibboleth。本周内完成。]]></description>
			<content:encoded><![CDATA[<div class="content">
<p>　　今天起重新认真研究Shibboleth和GridShib。上学期期末奉命安装GridShib。结果搞到放假前搞完了Globus的安装，而Shibboleth则一直没有进展。看来俺的毕业也就是靠他了，决心认认真真学习研究这个东西。</p>
<p>　 　目前第一步当然是安装配置起来，玩转一下，必要时读读代码也是需要的。下一步想法是把Shibboleth和学校的CAS 认证连接起来，然后把Shibboleth和另外一块任务“集群管理” 结合起来。再后来，建立Shibboleth联邦，向外推广？！（若能成事，老板肯定开心死了）</p>
<p>　　GridShib方面还不是太清楚可以怎么进展，留待以后写吧。</p>
<p>　　4.30就截稿的ChinaGrid摆在面前，能<strong>咬</strong>一口么？</p>
<p>　　一些有用的网站：<a href="http://www.switch.ch/aai/docs/shibboleth/SWITCH/1.3/idp/install-idp-1.3-debian-apache.html">Install Shibboleth 1.3 Identity Provider on Debian 3.1 (sarge), Tomcat and Apache</a></p>
<p>　　www.switch.ch/aai下还有很多很有用的文档。感觉比Shibboleth官方的要直观很多。准备按照上面的文章安装Shibboleth。本周内完成。 </p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.jeffcai.com/archives/4/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>
