我想创建一个私人网址
http://domain.com/content.php?secret_token=XXXXX
然后,只有拥有确切网址(例如通过电子邮件接收)的访问者才能看到该网页 . 我们在显示内容之前检查 $_GET['secret_token']
.
我的问题是,如果任何机会搜索机器人找到URL,他们将只是索引它,URL将是公共的 . 有没有一种实用的方法来避免机器人访问和后续索引?
Possible But Unfavorable Methods:
-
登录系统(例如通过php会话):但我不想提供用户登录 .
-
受密码保护的文件夹:问题如上 .
-
使用Robots.txt:许多搜索引擎机器人都不尊重它 .
6 回答
如果没有链接(包括文件夹没有索引视图),机器人将找不到它
如果令牌错误,你可以返回404:这样一个机器人(以及其他没有令牌的人)会想,没有这样的页面
只要你没有链接到它,没有蜘蛛会捡起它 . 而且,由于您不需要任何密码保护,该链接将适用于所有人 . 考虑在使用密钥后禁用密钥 .
你只需要告诉搜索引擎不要索引
/content.php
,以及那些尊重robots.txt
的搜索引擎不会索引以/content.php
开头的任何页面 .你所谈论的是通过默默无闻的安全 . 它永远不是一个好主意 . 如果你必须,我会提出这些想法:
使链接过期
锁定第一次访问的C或D类IP的链接
让页面向用户提出类似逻辑问题的信息,然后转发到带有时间敏感令牌的真实页面(2步骤过程),如果质询失败,则返回404以便爬虫停止 .
尝试生成一个5-6个字母数字密码并附上电子邮件,因此尽管机器人蜘蛛侠,但他们需要密码才能访问该页面 . (只是额外增加的安全措施)
保留链接未发布将在 most 情况下正常...
...但是,我会警告你,浏览器工具栏的流行(谷歌和雅虎的想法)会改变游戏 . 我工作过的一家公司在Google上编制了索引页面 from their intranet . 您可以搜索该页面,并且会出现一些结果,但您无法进入该页面 .
我们认为这些链接传播到Google的唯一方法是通过工具栏 . (如果有其他人有更好的解释,我很乐意听到......)我现在已经离开那家公司了,所以我不知道他们是否曾经明确地知道那里发生了什么 .
我知道,奇怪但真实......