如果我有一个用于获取消息的 URL,并且我像这样创建它:http://www.mydomain.com/somelonghash123456etcetc此 URL 允许其他服务向其发送消息。搜索引擎机器人能找到它吗?我不想将它放在我的 robots.txt 中,因为这样会将其暴露给看到 robots 文件的任何人。
当然我会在应用程序中添加其他身份验证,但第一步是不让任何人发现该 URL。
有什么常用方法吗?
答案1
如果它没有链接到任何地方,搜索引擎就不可能找到它(因为这是搜索引擎查找其他信息的唯一方法)。为了确保搜索引擎不会通过 robots.txt 找到它并保密,请使用双重哈希:
http://example.com/asdfghjk/12345678
你的 robots.txt 将禁止 asdfghjk 以下的任何内容:
User-agent: *
Disallow: /asdfghjk/
但是任何不知道完整路径的人仍然无法通过查看它来获取第二个 URL 部分。
答案2
如果您的身份验证有效,则没有理由隐藏 URL。我宁愿专注于此。
答案3
您可以输入一些可识别的内容,例如 /secretpage[hash]123456etcetc,然后 grep apache 日志,如果一个 ip 尝试过于频繁地访问 secretpage url,则该自动脚本会阻止访问。
但实际上,miademora 是正确的。确保身份验证安全(双因素?),并放弃通过隐蔽性实现的安全性。