以编程方式确定某人是否拥有某个网站?

时间:2010-07-30 02:15:37

标签: javascript html web widget

我需要弄清楚确定某人是否是网站的实际所有者的最佳方法。我不只是指域名,尽管在很多情况下可能就是这种情况。

我的第一个倾向是让他们在他们的HTML中添加一个我的程序可以抓取的特殊注释。 e.g:

<!-- @webcode:1234 -->

该方法的一个可能的问题是理论上的某些人可以将其添加到他们页面上的评论中或者添加内容的其他方式。虽然我不确定我有什么,但他们不能这样做。

我的另一个想法是,因为我计划提供一个JavaScript小部件只是为了抓住它,虽然我不想强迫他们添加小部件。

<script type="text/javascript" src="http://yoursite.com/widget/widget/A4923D2342JF"></script>

可以采用哪些其他机制来确定网站的所有权/控制权?

7 个答案:

答案 0 :(得分:9)

以下是Google用于Domain verification的选项:

  • 在您的帐号中创建CNAME或TXT记录 域名的DNS设置。这些方法 需要访问DNS设置 您域名托管服务商的域名 网站。您可以选择哪种方法 (CNAME或TXT记录)取决于 您的Google Apps提供的功能 控制面板。我们现在 推出了TXT记录方法但是 还是要求很多客户创建一个 相反,CNAME记录。

  • 将HTML文件上传到您的域名 Web服务器此方法需要 能够将文件上传到您的域名 网络服务器。如果你这样做试试这个 无法访问您的域名 DNS设置。

  • 在主页上添加标签 此方法仅适用于 一些客户(这是另一个新客户 我们推出的方法)。它 需要访问您域名的网站 服务器但不上传到它。尝试 如果您具有写入权限,请执行此操作 到服务器上的文件但不能 上传新文件。

CNAME / TXT或将HTML文件上传到域的根目录是最安全的,因为它需要完全控制域。如果你想要更加宽松,你可以在头节点中使用Meta标签,这会阻止某人向页面添加评论。一切都取决于你想要的安全程度。

答案 1 :(得分:4)

执行Google为其网站管理员工具所做的工作。生成一个唯一的密钥,并将它们放在首页头部的元标记中。不拥有该网站的用户很可能无法更改<head></head>标记内的内容。如果可以的话,该网站几乎可以遭受任何形式的破坏,并且毫无希望。

答案 2 :(得分:2)

将要求的一部分放在<head>标记内。通常情况下,即使用户生成的内容也不会让它成为头脑。

此外,您对评论黑客的担忧可能是不必要的。任何值得它重量级的评论系统都知道要逃避评论,以便评论不会显示为实际的HTML标记。

答案 3 :(得分:2)

您可以让他们添加您的原创想法,但只接受评论,例如网站的<header>标记。通过这种方式,您可以避免让他们将评论转到您最初建议的“评论”部分。

事实上,我订阅了一项服务:include the special comment in the header section of your page

答案 4 :(得分:1)

让他们在服务器上放一个难以猜测的名字的文件?

,例如http://www.example.com/5gdbadcab234g3.txt

答案 5 :(得分:-1)

唯一真正的方法是能够访问他们的文件服务器。通过HTTP传输的任何内容都可以重现。

如果您无权访问其服务器,那么最好的方法是在页面上嵌入加密字符串(或在该页面上的图像或某些二进制文件中)。

字符串应包含URI,作者和时间戳。这样,即使有人将此字符串复制到他们的网站,您仍然可以确定作者和页面。一个额外的好处是你将能够确定是否有盗窃。

当然,这只是加密页面/作者组合的算法一样好;擅长解密的黑客可以解决这个问题。此外,不诚实的作者可以为他的页面创建自己的密钥,因此您需要托管加密,以便没有人可以修改时间戳。此外,这要求所有作者将代码放在他们的页面上。

答案 6 :(得分:-1)

我知道你提到它不一定是域依赖的,但这会有所帮助。您可以对域进行哈希处理(因为它们是唯一的)并将该字符串发送到其网站上的某个位置.txt或其他人提到的标题中。

然后将所有域及其哈希值存储在数据库中,并且刮刀将检查它正在抓取的域是否与哈希注释字符串匹配,如果它检查了它的罚款。