简化验证网站所有权的方法(使用javascript?)

时间:2010-07-19 19:47:17

标签: javascript ruby-on-rails

我有一个rails应用程序,要求用户在从该网站提交链接之前验证他们是否拥有网站。

我已经实施了一个网站验证系统,该系统的工作归功于a question I made several months ago的答案。该系统有效但对用户来说相当麻烦。它要求他们在网站上创建一个网页,其中包含网址的特定验证密钥。我觉得我要求用户跳过很多箍只是为了将他们的页面提交到我的网站。但是,网站验证至关重要,我不能放弃这个功能,无论多么麻烦。

我正在寻找一些有助于验证网站的JavaScript代码。当用户安装插件时,他们所要做的就是点击Web应用程序上的“验证”,并为他们完成所有工作。他们不必经历创建新网页并删除它的繁琐工作。

我对如何开始有一个微弱的想法......

第一步:放置在网站上的javascript代码(谷歌分析代码的简化版):

        "<script type='text/javascript' id="THE VERIFICATION CODE GENERATED BY THE RAILS APP">

          (function() {
            var secondScript = document.createElement('script');
secondScript.type = 'text/javascript';
            secondScript.src = 'http://www.mywebapp.com/verify.js';
            var firstScript = document.getElementsByTagName('script')[0]; firstScript.parentNode.insertBefore(secondScript, firstScript);
          })();

        </script>"

在第二个脚本(verify.js)中:

//find some way to ensure that the first script has an id of "VERIFICATION KEY"
//if so, return some data that the rails app can understand and verify the site

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

这是一个非常有趣的问题,但我不知道你所寻找的方式是否有一个好的解决方案。换句话说,我认为您不能创建某种自动化实用程序来在第一步中上传脚本。

您不能假设他们有FTP访问权限或SSH访问权限;一些网站主机可能会禁止这些事情。你不能假设他们安装了某种“包”来与之沟通,甚至安装这样的东西。

可能工作的一件事(但仍然有自己的问题)是做一个whois查询并通过确认链接给记录网站的所有者发电子邮件...当然那是假设列出了whois并且他们没有提供虚拟电子邮件。

Google帐户通过执行文件上传操作或让用户在网站上创建自定义子域(CNAME)来检查域所有权。当然,如果您的用户在上传单个文件时遇到问题,那么可能就是CNAME事情。

答案 1 :(得分:1)

还有其他方法可以验证网站的所有权。许多公司都会向该域名的注册人发送电子邮件。创建具有特定名称的文件。将一段特定文本放入索引页面的标题中。我认为你在上面尝试的方式比它需要的更复杂。任何网站管理员都可以轻松创建具有特定名称和特定内容的文件。我已经为不同的工具做了很多次。

不要流汗: - )