如何制作私人网址?

时间:2012-02-09 18:12:01

标签: php html web robots.txt

我想创建一个私人网址

http://domain.com/content.php?secret_token=XXXXX

然后,只有拥有确切网址(例如通过电子邮件接收)的访问者才能看到该网页。我们在显示内容之前检查$_GET['secret_token']

我的问题是,如果任何机会搜索机器人找到URL,他们只会将其编入索引并且URL将是公开的。有没有一种实用的方法来避免机器人访问和随后的索引?

可能但不利的方法:

  1. 登录系统(例如通过php会话):但我不想提供用户登录。

  2. 受密码保护的文件夹:问题如上所述。

  3. 使用Robots.txt:很多搜索引擎机器人都不尊重它。

6 个答案:

答案 0 :(得分:7)

你所说的是通过默默无闻的安全。它永远不是一个好主意。如果你必须,我会提出这些想法:

  • 使链接过期
  • 将链接锁定到第一次访问的C或D类IP
  • 让页面向用户提出类似逻辑问题的信息,然后转发到带有时间敏感令牌的真实页面(2步骤过程),如果质询失败,则返回404以便爬虫停止。

答案 1 :(得分:3)

尝试生成一个5-6个字母数字密码并附上电子邮件,因此尽管机器人需要密码,但他们需要密码才能访问该页面。 (只是额外增加的安全措施)

答案 2 :(得分:2)

  • 如果没有链接(包括该文件夹没有索引) 视图),机器人找不到它
  • 如果令牌错误,您可以返回404:这样,机器人(以及其他没有令牌的人)会认为,没有这样的页面

答案 3 :(得分:2)

只要你没有链接到它,没有蜘蛛会捡起它。而且,由于您不需要任何密码保护,该链接将适用于所有人。考虑在使用密钥后禁用密钥。

答案 4 :(得分:1)

您只需告诉搜索引擎不要将/content.php编入索引,并且尊重robots.txt的搜索引擎不会将以/content.php开头的任何网页编入索引。

答案 5 :(得分:1)

大多数情况......

中保持链接未发布

...但是,我会警告你,浏览器工具栏的流行(谷歌和雅虎的想法)会改变游戏。我工作过的一家公司的网页来自他们的内部网。您可以搜索该页面,但会出现一些结果,但除非您在我们的防火墙或VPN内,否则无法访问它们。

我们认为这些链接传播到Google的唯一方法是通过工具栏。 (如果其他人有更好的解释,我很乐意听到它......)我现在已经离开那家公司了,所以我不知道他们是否曾经明确地知道那里发生了什么。

我知道,但很奇怪但是......