我为通过跟踪他们的第三方网站链接到合作伙伴的公司工作。因此,例如在我们的网站上会有一个类似于此的外发链接(名称已更改以保护我的工作):
<a href="link.php?link=chuckecheese">check it out kids!</a>
如果你进入link.php,你会看到我在那里定义链接:
$outlink['chuckecheese'] = "http://partners.linktrackingisprettycool.com/x/212/CD1/$STAMP";
$ STAMP是一个时间戳,在圣诞节中午被替换为“12-25-09-1200”。
当用户点击此链接时,他会访问www.chuckecheese.com
这一切都运行良好,但它对SEO目的不如预期。我想做到这一点,以便搜索引擎将其视为chuckecheese.com的链接,这有助于我们的合作伙伴的网页冲突,更诚实。
我在.htaccess试图制作重写规则,但我很困惑,并且不确切知道它是如何完成的。我试过了:
RewriteRule http://www.chuckecheese.com$ link.php?link=chuckecheese$ [QSA]
但这似乎不起作用。我接下来应该尝试什么?
提前感谢您的帮助。你们这里的人总是很棒,而且我很欣赏堆栈溢出的优秀人才在我这里继续工作。
答案 0 :(得分:2)
您不能使用重写规则来重定向用户。该请求必须是您的网络服务器处理的请求。
您可以尝试使用一些javascript来实现此目的。所以href是chuckecheese,但是onclick,你将document.location更改为你真正想要做的事情。
为赏金编辑的问题
您可以做的是根据浏览器的用户代理预处理您的链接。因此,当用户代理是googlebot(以下字符串之一)时,您会显示http://www.chuckecheese.com的真实网址。
Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)
Googlebot/2.1 (+http://www.googlebot.com/bot.html)
Googlebot/2.1 (+http://www.google.com/bot.html)
如果网址不是googlebot,则会显示进行流量分析的链接。
您可以在以下网址找到用户代理列表:
如果googlebot未显示正确的用户代理(或将来更改),Google建议您对IP地址进行反向查找。这将是一个小小的性能影响。
您可以通过使用反向DNS查询验证访问您服务器的僵尸程序是否真的是Googlebot,验证该名称是否在googlebot.com域中,然后使用该googlebot名称进行正向DNS查找。如果您担心垃圾邮件发送者或其他麻烦制造者在声称自己是Googlebot时访问您的网站,这将非常有用。 - Google
编辑进一步解释 假设您使用的是php,则在运行时生成链接。这是我掀起的一些代码。
function getRealURL($url)
{
// adjust this regex to match the pattern of your traffic analysis urls
ereg("link=(.+)$",$url,$matches);
if ($matches[1])
{
// adjust this so the urls come out correctly
return "http://www.".$matches[1].".com";
}
else
{
return $url;
}
}
function isGoogle()
{
switch ($_SERVER['HTTP_USER_AGENT'])
{
case 'Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)':
case 'Googlebot/2.1 (+http://www.googlebot.com/bot.html)':
case 'Googlebot/2.1 (+http://www.google.com/bot.html)':
return true;
default:
return false;
}
}
function showlink($url)
{
$trafficAnalysisUrl = getRealURL($url);
if (isGoogle())
{
return $url;
}
else
{
return $trafficAnalysisUrl;
}
}
<html>
...
Come eat pizza at <a href='<?=showLink("link.php?link=chuckecheese")?>'>chuck e cheese!</a>
...
</html>
我怀疑谷歌会关心这样的事情,因为两个链接都去了同一个地方。 但请检查TOS以确定。 http://www.google.com/accounts/TOS
答案 1 :(得分:2)
你的假设并不好。你说:
我想让它成为搜索 引擎会将其视为链接 chuckecheese.com,这有助于我们的 当人们搜索查克时得分 奶酪因为我们会被视为 将权利与他们联系起来。
如果这真的有助于SEO明智,每个人都会垃圾链接所有伟大的网站只是为了获得SEO pagerank和游戏将是太容易了。链接的受益人是收件人页面/站点,而不是发件人。
答案 2 :(得分:0)
嘿PG ...链接到其他网站不会给你任何进一步的PageRank,因为让你的广告出现在其他数千个网站上的Adwords不会给你PageRank。是的,您的合作伙伴可以通过链接到他们而受益。那么你从开放中谈到的收益会怎样?根据我对你所写内容的理解,这只是另一种花哨的重定向。谷歌知道这一点。