我们想要隐藏一些Google链接, 使用Javascript“隐藏”链接,但让它适用于真正的客户。
我被SEO机构告知,最好的方法是对链接进行base64编码并通过javascript调用它:
<a data-href="RdcDovL1N0YWdpbmc...base64...hhcmRpbmctaGVycmVuLWhlbaQtMTgyMDg3"
href="#">Link</a>
<script>
<!--
var _dlist = document.getElementsByTagName('A');
for(i=0;i<_dlist.length;i++) {
var _data = _dlist[i].getAttribute( 'data-href' );
if( _data !== 'null' ) {
var _extend = CryptoJS.enc.Base64.parse( _data );
_dlist[i].setAttribute( 'href', _extend.toString( CryptoJS.enc.Latin1 ) );
}
}
-->
</script>
我现在的问题是,我不想仅仅为链接包含另外两个文件(他们建议我使用crypto-js lib)。我想问你,谷歌在多大程度上揭示链接并遵循它们,如果不加载更多脚本,最简单的方法是什么。 jQuery可用。
答案 0 :(得分:1)
这就是我最终的结果:
链接看起来像:
<a href="#" onclick="linkAction(this); return false;"
data-href="uggc://fgntvat.....">
其中data-href
为Rot13编码且linkAction
为:
function linkAction(e) {
window.location = rot13($(e).data('href'));
}
..在外部JS文件中。
我认为这是没有性能开销的最好的混淆。 让我们看看SEO机构的说法: - )
P.S Rot13取自:Where is my one-line implementation of rot13 in JavaScript going wrong?
答案 1 :(得分:0)
线程有点遗弃,情况也有点其他。开头引用的代码似乎来自我正在为之工作的代理商。
知道googlebot是一种Chrome和this之类的帖子后,没有太多方法可以隐藏googlebot的链接。
在我看来,有一种方法很有希望 - 也许,如果有人发现它也很有希望,那就会被编码:
class="hidden"
的链接,并使用正则表达式在href-attribute中重新设计URL。使用redesign
我的意思是:用.
,/
或|
替换%
和/或*
,或在某些部分划分网址使用非网址字符,例如|
或*
。X-Robots-Tag
onError
之后至少6秒针对不存在的图片触发onLoad
(确保Googlebot消失)onError
触发第二个javascript,再次使网址网址可以恢复这种方法,例如:可以通过onError
立即触发网址重新设计,并且可以通过onClick
触发重新设计。