2

例如来自 Microsoft - “KB2756872”或来自国家漏洞数据库 - “CVE-2010-1428”或来自 Red Hat - “RHSA-2010:0376”或来自 OID - “1.3.6.1.4.1.311”或来自 UUID/GUID - “550e8400-e29b-41d4-a716-446655440000”

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

我开发了博客软件,并有想法在每篇文章的正文中放置唯一的 ID,以便可以轻松识别来自本地存储的副本对应于远程发布的副本。

此外,我想在许多不同的博客服务上发帖,这样如果一个失败了,可以从另一个访问文章。所以链接可能会死,但如果我添加 UID - 任何人都可以尝试网络搜索以在其他服务上查找帖子!

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

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

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

  • 每个搜索部分仅 >= 3 个字符
  • 它不是像 gfh6wytrh6wu56he5gahj763 这样的索引灰尘

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

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

4

2 回答 2

5

您可以使用RFC 4151定义的标记 URI

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

请注意,这些 URI 仅标识,它们不定位。因此,标签 URI 并没有说明某些内容的发布位置。

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

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

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

于 2012-12-19T09:06:12.800 回答
1

您可以使用基于年份和编号的文章标识符,就像 CVE 标识符一样。由于您也需要修订,因此您可以在标识符后附加点以阐明版本。例如,对于一个AWesomeB日志S服务,AWBS-2012-1.0 指的是原始文档,AWBS-2012-1.1 指的是第一版等。

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

于 2012-12-16T19:45:52.650 回答