<?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>网站分析 Web Analytics &#187; 重定向</title>
	<atom:link href="http://www.webanalytics.org.cn/tag/%e9%87%8d%e5%ae%9a%e5%90%91/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.webanalytics.org.cn</link>
	<description>专注于网站分析工具、网站分析方法与网站分析实践</description>
	<lastBuildDate>Fri, 25 Jun 2010 05:55:20 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>警惕！部署网站分析工具时的陷阱</title>
		<link>http://www.webanalytics.org.cn/pitfalls-in-web-analytics-tool-deployment/</link>
		<comments>http://www.webanalytics.org.cn/pitfalls-in-web-analytics-tool-deployment/#comments</comments>
		<pubDate>Wed, 17 Mar 2010 13:02:51 +0000</pubDate>
		<dc:creator>深蓝</dc:creator>
				<category><![CDATA[分析工具]]></category>
		<category><![CDATA[JavaScript错误]]></category>
		<category><![CDATA[推广活动]]></category>
		<category><![CDATA[跨域名]]></category>
		<category><![CDATA[重定向]]></category>
		<category><![CDATA[陷阱]]></category>

		<guid isPermaLink="false">http://www.webanalytics.org.cn/?p=353</guid>
		<description><![CDATA[为了能够跟踪访问者在网站上的行为，特别是对于标签型的网站分析工具而言，部署代码是必不可少的步骤。代码的部署影响到了网站分析工具抓取到的数据的正确性。同时，网站分析工具后台的设置也会影响分析的质量。在实际的部署过程中，存在下面一些不容易注意的陷阱，可能最终导致失败。]]></description>
			<content:encoded><![CDATA[<p>为了能够跟踪访问者在网站上的行为，特别是对于标签型的网站分析工具而言，部署代码是必不可少的步骤。代码的部署影响到了网站分析工具抓取到的数据的正确性。同时，网站分析工具后台的设置也会影响分析的质量。在实际的部署过程中，存在下面一些不容易注意的陷阱，可能最终导致失败。</p>
<h3>JavaScript错误</h3>
<p>我看很多的网站部署网站分析工具代码的时候，都会把这些代码放在页面代码的底部，当页面加载完的时候才会执行这些代码。这样做基于两个原因，一是只有页面完全被加载的时候，这次页面访问才会被统计，得到的数据更有意义；二是如果这部分代码出现了什么问题，不会影响到页面的正常显示。不过，这也会引发另一个问题，当页面上之前的代码存在JavaScript错误的时候，网站分析工具的代码就失效了。因为，浏览器在处理页面上的JavaScript代码，是从上向下执行的。如果在这个过程中发生了错误，将不再继续执行。</p>
<p>为了避免这种错误，在检查部署的时候，不仅仅要检查页面上是否有代码，还要检查是否真的有统计的数据发出。这里推荐使用<a title="WASP" href="http://webanalyticssolutionprofiler.com/" target="_blank">WASP</a>。这是一个Firefox的插件，可以检查是否有Web Analytics工具存在，都发送了哪些数据。当然，也可以用HTTP嗅探器来检测HTTP的数据包。</p>
<h3>跨域导致的错误</h3>
<p>如果部署的网站有多个域名，那么跨域的跟踪是必须要考虑的事情。如果你使用Google Analytics，而没有考虑跨域的问题，那么得到的结果很可能不是你希望看到的。详情可以看之前的一篇《<a title="网站分析中的多网站跨域跟踪" href="http://www.webanalytics.org.cn/cross-domain-tracking-in-web-analytics/" target="_blank">网站分析中的多网站跨域跟踪</a>》。</p>
<h3>遗漏的设定</h3>
<p>在Google Analytics中，在部署的时候可以设定一些函数，比如<span><span>pageTracker._addOrganic()就是来处理搜索引擎的，同时在后台可以设置过滤器等。SiteCatalyst更是有许多的设置。这些设置如果在部署之前不考虑好，很可能留下遗憾。因为很多设置都是在生效以后才能看到数据。如果，等部署完一段时间以后才发现，即使及时做了修正，之前一段时间的宝贵数据还是遗失了。这对网站分析来说，不能不说是严重的损失。</span></span></p>
<p><span><span>所以，在部署以前熟悉工具的设置，并作出恰当的规划是非常必要的。</span></span></p>
<h3>URL重定向</h3>
<p>URL重定向主要用在SEO，用来生成对搜索引擎更友好的静态URL。当你输入一个带动态参数的URL时，会重定向到一个静态的URL，参数会根据一定规则作为这个静态URL的一个目录。而网站分析中，广告一般都是以URL后面加参数的方式来跟踪的，如果遇到会URL重定向的页面，这个参数会自动转为静态URL，导致网站分析工具不能取到广告的ID。</p>
<p>要解决这个问题，比较复杂，需要和开发人员一起配合根据具体情况处理。</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webanalytics.org.cn/pitfalls-in-web-analytics-tool-deployment/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>自动跳转页面的跟踪</title>
		<link>http://www.webanalytics.org.cn/track-redirection-page/</link>
		<comments>http://www.webanalytics.org.cn/track-redirection-page/#comments</comments>
		<pubDate>Fri, 30 Oct 2009 06:59:14 +0000</pubDate>
		<dc:creator>深蓝</dc:creator>
				<category><![CDATA[分析工具]]></category>
		<category><![CDATA[自动跳转页面]]></category>
		<category><![CDATA[重定向]]></category>

		<guid isPermaLink="false">http://www.webanalytics.org.cn/?p=98</guid>
		<description><![CDATA[由于种种原因，在网站中，存在一些自动跳转的页面。这类页面主要是程序方面的处理，并不会有真正的页面在浏览器中显示，然后就跳转到目标页面了。在某些情况下，这些页面也需要被跟踪。

比如，在<a title="重定向的影响" href="http://www.webanalytics.org.cn/effect-on-data-by-redirect/" target="_blank">上一篇文章</a>中提到的，电子商务网站生成订单以后，需要跳转到一个第三方平台去支付。用户选择了商品，输入地址等信息，最后确认订单。这时，会有一个不会在浏览器中显示的自动重定向页面，这里会真正的处理订单的生成，并且生成重定向的URL，最后自动通过服务端重定向到第三方的支付平台，请用户支付。

在这种情况下，如果网站希望能够跟踪到订单生成的情况，应该如何做呢？

首先想到的最简单的是，<b>在订单确认的页面中的确认按钮上增加onclick方法</b>，来监听这个按钮的点击。只要用户点击了按钮，就使用分析工具的函数生成一个虚拟的页面，这个页面来代表订单的生成。不过，这种方式，在我们遇到的这个问题中不能成立。因为，用户点击确认按钮的时候，并不能保证订单就一定生成了。点击确认按钮提交到服务器后，服务端程序还要对用户输入的信息进行一些处理和检查，然后才生成订单，这中间可能会有错误出现导致不能生成订单。如果采用这种方式，统计到的订单数会比实际的大许多。]]></description>
			<content:encoded><![CDATA[<p>由于种种原因，在网站中，存在一些自动跳转的页面。这类页面主要是程序方面的处理，并不会有真正的页面在浏览器中显示，然后就跳转到目标页面了。在某些情况下，这些页面也需要被跟踪。</p>
<p>比如，在<a title="重定向的影响" href="http://www.webanalytics.org.cn/effect-on-data-by-redirect/" target="_blank">上一篇文章</a>中提到的，电子商务网站生成订单以后，需要跳转到一个第三方平台去支付。用户选择了商品，输入地址等信息，最后确认订单。这时，会有一个不会在浏览器中显示的自动重定向页面，这里会真正的处理订单的生成，并且生成重定向的URL，最后自动通过服务端重定向到第三方的支付平台，请用户支付。</p>
<p>在这种情况下，如果网站希望能够跟踪到订单生成的情况，应该如何做呢？</p>
<p>首先想到的最简单的是，<b>在订单确认的页面中的确认按钮上增加onclick方法</b>，来监听这个按钮的点击。只要用户点击了按钮，就使用分析工具的函数生成一个虚拟的页面，这个页面来代表订单的生成。不过，这种方式，在我们遇到的这个问题中不能成立。因为，用户点击确认按钮的时候，并不能保证订单就一定生成了。点击确认按钮提交到服务器后，服务端程序还要对用户输入的信息进行一些处理和检查，然后才生成订单，这中间可能会有错误出现导致不能生成订单。如果采用这种方式，统计到的订单数会比实际的大许多。</p>
<p>那我们改进一下。我们将中间的自动重定向页面调整一下，不再使用服务端的重定向，而是<b>返回一个HTML页面，在页面中加入跟踪的代码</b>，在跟踪的代码后面放上Javascript的跳转代码。因为，服务端只有在程序执行结束以后才返回页面，在页面上放入代码，可以保证，在页面被跟踪到时，订单确确实实的生成了。</p>
<p>当看报表的时候，发现跟踪到的订单生成的数量非常少，比实际生成的数量少了很多。为什么会这样呢？</p>
<p>还记得在《<a title="脚本型网站分析工具工作原理" href="http://www.webanalytics.org.cn/principle-of-script-web-analytics-tools/" target="_blank">脚本型网站分析工具工作原理</a>》中提到的吗？脚本型网站分析工具，工作的时候，是把采集到的数据整理到一个图片请求的链接的参数里，通过请求这个位于数据收集服务器上的图片，将数据发送出去的。那么，跳转的代码虽然放在了跟踪的代码的后面，但跟踪代码执行完成的时候，并不是把数据已经发送完了，而只是生成了一个图片的对象，而在这个对象还没有被加载。那么浏览器会一边继续执行Javascript的代码，一边加载这个图片。在这种情况下，有非常大的可能，在图片还没来得及请求的时候，跳转的Javascript就被执行了。也就是说，跟踪的数据压根就没来得及发送出去。</p>
<p>问题已经找到，如何来解决呢？也许你会说，</b>跳转前增加一个延时，让图片有足够的时间被请求</b>。其实问题又来了，这个延时多长的时间合适呢？0.1秒？会不会太短，万一有的客户电脑慢那个图片还没请求出去怎么办？那2秒？会不会太长了，让用户傻等2秒的时间会不会体验太差，特别是在要让他们掏腰包的时候，多1秒等待，他们就多了1秒来改变主意。</p>
<p>有没有办法，知道什么时候图片的请求已经发送了，然后在这个时候立刻跳转到支付平台呢？这样就可以跟踪到这个页面，又能不耽误时间。</p>
<p>刚才已经说过，在跟踪代码执行完的时候，会新创建一个图片的对象。这个图片的对象，在这个时刻还没有请求，更不可能加载，我们只要能够<b>找到这个对象就能够通过回调来知道什么时候这个请求完成了，那这个时候就可以跳转了</b>。步骤如下：</p>
<p>1、找到那个图片对象。跟踪代码执行完后，紧接着在HTML的所有图片对象中遍历，找到src是指向分析工具的数据收集服务器的图片。比如，Google Analytics的服务器是www.google-analytics.com。</p>
<p>2、调用这个图片的onLoad()，注册一个回调函数。</p>
<p>3、在回调函数中，执行Javascript跳转。</p>
<p>以上是我的解决方法，如果你也遇到类似的问题，赶紧试试吧。如果大家觉得我哪里写错了，请不吝赐教哦！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webanalytics.org.cn/track-redirection-page/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>页面重定向及其对分析数据的影响</title>
		<link>http://www.webanalytics.org.cn/effect-on-data-by-redirect/</link>
		<comments>http://www.webanalytics.org.cn/effect-on-data-by-redirect/#comments</comments>
		<pubDate>Thu, 29 Oct 2009 09:59:57 +0000</pubDate>
		<dc:creator>深蓝</dc:creator>
				<category><![CDATA[基础知识]]></category>
		<category><![CDATA[原理]]></category>
		<category><![CDATA[报表解读]]></category>
		<category><![CDATA[重定向]]></category>

		<guid isPermaLink="false">http://www.webanalytics.org.cn/?p=93</guid>
		<description><![CDATA[重定向页面是一种特殊页面，当访客访问一个重定向页面时，该页面会立即自动跳转到目标页面，也许用户可能都没有感觉到中间还经过了一个页面，就已经跳转了。
<img class="alignright size-full wp-image-94" title="404-301重定向" src="http://www.webanalytics.org.cn/wp-content/uploads/2009/10/404-301.jpg" alt="404-301重定向" width="200" height="200" align="right" />
<h3>那么为什么会有重定向页面在网站中存在呢？常见的网页自动跳转有下列一些应用：</h3>
<h4>广告点击的跟踪</h4>
很多门户类网站会出售广告位给客户，客户可以购买这些广告位展示自己的内容，建立指向自己网站的链接从而导入更多的流量。这些门户网站就需要统计出这些链接被点击的情况，提交给用户。

在很多网站中，有针对网站内部某些产品或者内容的推广。这些网站会为某些产品或者内容在首页显眼位置放置广告，从而有目的的带去更多的流量。网站的运营者当然也希望了解广告点击的情况。]]></description>
			<content:encoded><![CDATA[<p>重定向页面是一种特殊页面，当访客访问一个重定向页面时，该页面会立即自动跳转到目标页面，也许用户可能都没有感觉到中间还经过了一个页面，就已经跳转了。<br />
<img class="alignright size-full wp-image-94" title="404-301重定向" src="http://www.webanalytics.org.cn/wp-content/uploads/2009/10/404-301.jpg" alt="404-301重定向" width="200" height="200" align="right" /></p>
<h3>那么为什么会有重定向页面在网站中存在呢？常见的网页自动跳转有下列一些应用：</h3>
<h4>广告点击的跟踪</h4>
<p>很多门户类网站会出售广告位给客户，客户可以购买这些广告位展示自己的内容，建立指向自己网站的链接从而导入更多的流量。这些门户网站就需要统计出这些链接被点击的情况，提交给用户。</p>
<p>在很多网站中，有针对网站内部某些产品或者内容的推广。这些网站会为某些产品或者内容在首页显眼位置放置广告，从而有目的的带去更多的流量。网站的运营者当然也希望了解广告点击的情况。</p>
<p>如果这些网站都部署好一套网站分析工具来监控这些流量，这些点击数的统计当然都不是问题。但是，网站分析本身在国内也是比较新兴的事务，很多网站并没有部署。那如何来测量这些点击呢？一个传统的统计方式，就是增加一个透明中间页。那些页面上的广告链接并不是直接指向客户网站或者要推广的产品的页面，而是指向了这个中间页，这个中间页面的程序会记录下这次点击，然后在自动跳转到真正的目标页。</p>
<h4>外部平台支付</h4>
<p>几乎绝大部分的电子商务网站都在使用第三方的支付平台，那么网站和支付平台之间需要有一个接口。很多的处理都是，在用户确认订单点击支付按钮的时候，会首先有一个中间页面来处理一些用户信息，准备接口的数据，再生成最后指向支付平台的链接，最后跳转到支付平台去让用户继续完成支付。那这个跳转很多时候也是自动重定向的。</p>
<h4>增强用户体验</h4>
<p>这类的重定向主要是为了网站设计的需要。比如，论坛登录，会给一个提示信息，然后几秒以后会自动跳转到首页 。或者操作过程中出现错误，会出现错误提示的页面，然后也自动跳转到下一个页面。</p>
<h3>重定向的类型分为：</h3>
<h4>服务端重定向</h4>
<p>服务端的重定向是指通过在HTTP的头中包含跳转指令来完成的重定向。用户几乎感觉不到中间还有一个页面，这个页面也不会有内容被浏览器加载。一般是在网关程序中处理，比如以PHP为例：</p>
<p><em><span style="color: #808080;">header( ‘Location: http://www.webanalytics.org.cn’ ) ;</span></em></p>
<h4>客户端重定向</h4>
<p>客户端的重定向是指在HTML中通过标签或者JavaScript脚本来完成的重定向。这个时候浏览器实际上已经加载了页面。实现上有使用HTML的meta标签：</p>
<p><em><span style="color: #808080;">&lt;meta http-equiv=&#8221;refresh&#8221; content=&#8221;0.1;url=http://www.webanalytics.org.cn&#8221;&gt;</span></em></p>
<p>也有使用JavaScript：</p>
<p><em><span style="color: #808080;">window.location.href=&#8221;http://www.webanalytics.org.cn&#8221;</span></em></p>
<h3>重定向对网站分析数据的影响</h3>
<p>网站分析工具的报表中，一般都会有流量来源的报表，统计到用户是是从哪里点击进入我们的网站的。如果用户在门户网站的网页A上，点击了一个广告，这时会跳转到一个中间跳转页B，再自动跳转到目标页C。我们在C上有部署跟踪的代码。如果是在页面B上使用的是服务端跳转，那么我们跟踪到的流量来源是页面A，如果是客户端的跳转，那跟踪到的就是页面B，我想这在大部分时候都不是我们想要的。</p>
<p>客户端跳转，中间页面又在自己的网站，跟踪到的流量来源总是一个广告点击的统计页，无法知道真正用户是在哪里点击的。这就是我现在遇到的问题，谁有解决的办法？期待你的答案！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.webanalytics.org.cn/effect-on-data-by-redirect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
