我注意到 Pinterest 和其他一些网站允许用户选择是否不希望他们的名字被搜索引擎索引。我想在我们的网站上做类似的事情。本质上,我想让用户在有人在 Google 等上搜索他们的名字时,不会显示他们在留言板上的评论。
不确定是否相关,但我们使用的是 Ruby on Rails。
谢谢,
最佳答案
没有标准的方式告诉搜索引擎一个页面应该只被部分索引。您可以禁止索引(meta
-robots
元素或 HTTP header X-Robots-Tag
的 noindex
值)或抓取(robots.txt
文件中的禁止
)整个页面,但不是特定部分。
一个异常(exception)是来自外部源的内容,该外部源本身被阻止抓取(例如,iframe
元素)。
当然你可以使用一些“技巧”,例如利用搜索引擎无法(或不想)索引某些元素或用 JavaScript 插入的内容。但这可能随时会中断。搜索引擎会变得更好,将来可能会开始索引此类内容。
可能的解决方案(但都需要权衡):
权限系统:使这些特定用户的帖子仅对注册用户可读,因此搜索引擎根本看不到它们。权衡:如果用户(不允许对其内容/名称编制索引)引用此类受限帖子的文本,它会再次出现在搜索索引中。
禁止对整个页面进行索引,当这样一个特定的用户发布到那里时。权衡:此线程没有搜索引擎结果
匿名化这些特定用户的姓名。权衡:社区可能会受到影响。
一般来说,我会尽量避免实现这样的功能(或者至少不依赖它)。 要么它是公共(public)板,要么它是私有(private)板。如果需要,我只允许它用于线程启动器。当用户创建一个新线程时,他可以选择它是私有(private)线程还是公共(public)线程。如果是私有(private)线程,整个页面将得到一个noindex
(或者更好:权限限制)。所有其他用户都会收到通知,无论他们是在私有(private)线程还是公共(public)线程上发帖。因此,如果有人想保持“私密”,他只会在私有(private)线程中发帖。
关于html - 你如何从搜索引擎中隐藏部分网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13392751/