寻找易于搜索引擎索引的唯一ID模式

问题描述 投票:2回答:2

如微软 - “KB2756872”或国家漏洞数据库 - “CVE-2010-1428”或红帽 - “RHSA-2010:0376”或OIDs - “1.3.6.1.4.1.311”或UUID / GUID - “550e8400-e29b-41d4-a716-446655440000”。

我想把几个工作放到UID上。见下......

我开发博客软件并且想要在每个帖子的主体中放置唯一ID,因此可以很容易地识别出来自本地存储的副本对应于远程发布的副本。

此外,我想发布到许多不同的博客服务,所以如果一个人下来文章将从另一个可访问。所以链接可能已经死了但是如果我添加UID - 任何人都可以尝试网络搜索来查找其他服务的帖子!

这也允许收集一些传播统计数据的文章。许多网站只是复制内容(复制写入和重写机器人和人)来破坏搜索引擎。使用UID,我可以轻松识别此类网站......

所以我的问题是如何制作UID(以哪种形式),以便它可以很容易地被搜索引擎(网络,如谷歌/雅虎和企业,如Lucene / Solr / Sphinx / Xapian /等)索引。

我知道搜索引擎的一些限制,如:

  • 每个搜索部分只有> = 3个字符
  • 它没有像gfh6wytrh6wu56he5gahj763那样被索引的灰尘

所以这个任务不容易......

任何建议表示赞赏(书籍/博客文章/等)。

search tags full-text-search search-engine uid
2个回答
4
投票

您可以使用Tag URIs定义的RFC 4151

它们是全球唯一的,每个拥有一个域名或电子邮件地址至少一天的人都可以使用它们。

请注意,这些URI仅识别,它们无法找到。因此,标签URI没有说明发布内容的任何内容。

假设您网站的域名是“example.com”。如果您创建博客帖子,则可以创建以下标记URI:

tag:example.com,2012-12:cute-cat

请注意,此URI中的日期不是发布日期!它必须是您拥有域的(过去)日期(分别是电子邮件地址)。如果您在2003年注册了域名,则可以始终使用以tag:example.com,2004:开头的标签URI(不是“2003”,因为“2003”将表示“2003-01-01”,这可能是您不拥有域名的时间然而,在你的控制之下是一个(独特的)字符串。但是,如果您愿意,当然可以随时使用发布日期。但是不要使用未来的日期。


1
投票

您可以使用基于年份和数字的文章标识符,就像CVE标识符一样。由于您还需要修订版,因此可以在标识符后面添加点以澄清版本。例如,对于AWesome Blog Service,AWBS-2012-1.0将参考原始文档,AWBS-2012-1.1将参考第一次修订等。

但是,在使用它们之前,您需要确保AWBS是唯一的。 CVE是从池中手动分配的。您可能需要某种从池中分配AWBS的服务。它可以是一个简单的数据库查询。

© www.soinside.com 2019 - 2024. All rights reserved.