Indexing 结合年龄验证和谷歌索引

Indexing 结合年龄验证和谷歌索引,indexing,verification,Indexing,Verification,由于爬行器通常不会执行javascript,因此我考虑采用以下选项之一,以便成功地让它们为需要年龄验证的网站内容编制索引 我的首选解决方案: 正在检查cookie“ageverification”。如果它不存在,请向中添加一些javascript 将用户重定向到~/verifyage.aspx,这将添加所需的cookie并将用户重定向到其上一页 另一种解决方案: 如上所述,但不要重定向用户。相反,如果cookie不存在,则在现有页面的“顶部”绘制年龄验证表单 另一种解决方案: 添加一个爬虫可以跟

由于爬行器通常不会执行javascript,因此我考虑采用以下选项之一,以便成功地让它们为需要年龄验证的网站内容编制索引

我的首选解决方案:

正在检查cookie“
ageverification
”。如果它不存在,请向中添加一些javascript 将用户重定向到~/verifyage.aspx,这将添加所需的cookie并将用户重定向到其上一页

另一种解决方案:

如上所述,但不要重定向用户。相反,如果cookie不存在,则在现有页面的“顶部”绘制年龄验证表单

另一种解决方案:

添加一个爬虫可以跟随的“是的,我超过18岁”锚链接。我对这件事的合法性有点怀疑


任何见解或想法都值得赞赏。

不管怎样,你都有一个真正的问题

如果你让爬虫进入你网站的年龄验证部分,那么它的索引中就有了该内容。这意味着它将向搜索内容的用户呈现这些信息的片段。他们还没有通过你的年龄鉴定。在谷歌的例子中,这意味着用户实际上可以访问你放在verifywall后面的整个内容体,而无需通过你的筛选程序-他们可以从谷歌缓存中提取它

对不起,没有双赢的局面。要么有年龄验证的内容或搜索引擎优化,而不是两者。即使你以某种方式告诉搜索引擎不要吐出你的内容,仅仅是你的URL出现在搜索结果中这一事实就告诉人们你网站的(受限)内容

此外,关于您的JavaScript想法:这意味着禁用JavaScript的用户将在不知道应该有点击的情况下获得内容。如果你在上面显示一条横幅,那就意味着你在他们接受你的内容之前就把这些不受欢迎的内容发送到了他们的电脑上。这意味着它在他们的浏览器缓存中。或者,他们可以直接砍下你的横幅,在没有点击“确定”的情况下查看你所掩盖的一切


我不知道你的网站是做什么的,但我真的建议在允许用户查看任何内容之前,强制用户向你发布表单。将其接受状态存储在会话变量中。那不是伪造的。不要让搜索引擎进入,除非它已经足够老了,或者你有一些强有力的方法来限制它使用它所看到的内容和关于你自己责任的有力信息。我做什么-我在会话数据中存储年龄验证。如果会话变量不存在,服务器将在正文末尾(页脚后)追加一个div,并单击以验证或单击以退出。我使用CSS来覆盖内容

对于css-我使用:

display: block; width: 100%; height: 100%; position: fixed; top: 0px; left: 0px; z-index: 9999;
这会导致div覆盖图形浏览器中的所有其他内容,即使它位于主体的最末端

对于未启用JS的用户,“Enter”链接指向一个网页,该网页设置会话变量并将用户返回到他们请求的页面。这会导致浏览器的两个页面加载,让他们获得想要的内容,这并不理想,但这是非JS浏览器的唯一方法

对于支持JS的浏览器,页面上会附加一个小JavaScript,将“Enter”链接href链接更改为#,并将一个非常基本的函数附加到click事件上,因此单击Enter会触发use-XMLHttpRequest,告知服务器单击“Enter”的人。然后,服务器更新会话并用200OK响应XMLHttpRequest,触发JavaScript隐藏覆盖内容的年龄验证div。因此,会话被更新,以便服务器知道用户验证了年龄,用户可以看到他们想要的内容,而无需在浏览器中重新加载页面,这是一种更好的用户体验

因此,年龄验证可以在没有JavaScript的情况下工作,方法是以无状态方式或更友好的方式使用JavaScript将用户发送到验证页面


当搜索爬行器爬行站点时,它会在每个页面上获取年龄验证div,因为爬行器不会设置必要的会话变量,但由于div位于html正文的最末端,因此爬行器仍然会首先对真实内容进行索引。

此外,还应注意,通过单击进行年龄验证实际上只用于公关目的,并且在某些地方遵守法律,要求采取合理措施,让用户在不想看到成人内容之前退出看到了。就保护儿童不受内容影响而言,成人内容网站应发送RTA标题(google RTAALabel),这将触发内容过滤器,儿童甚至不会看到年龄验证屏幕,因为内容过滤器将阻止所有随RTA标题发送的内容。