我最近开始在我的网站上看到像Java/1.6.0_14(和变体)这样的用户代理
这是什么意思.它是一个浏览器或机器人或什么
这可能意味着有人使用Java抓取您的网站.除非您发现使用大量带宽或不遵守robots.txt文件的抓取工具,否则这并不是什么值得关注的事情.通常合法的抓取工具会花时间创建自定义用户代理,以便在遇到问题时轻松联系抓取工具,但即使他们使用的是默认用户代理,也很可能完全是良性的.
但是,如果您确实注意到来自Java客户端的404次点击或大量点击的高峰,您可能会受到垃圾邮件发送者的攻击,这些垃圾邮件发送者会在您的网站中寻找安全漏洞.如果您的网站构建良好,除了刻录您的部分带宽之外,他们不能做很多事情,但如果他们发现安全漏洞,他们肯定会利用它.正确处理垃圾邮件发送者超出了这个答案的范围,但是焦土解决方案(至少可以作为短期解决方案)将阻止包含字符串'java'的所有用户代理.
这意味着您的站点是通过某人计算机上的JVM访问的.它可能是一个爬虫或只是一个人抓取数据.您可以使用HttpURLConnection类复制用户代理字符串.这是一个示例:
import java.net.*; public class Request { public static void main(String[] args) { try { URL url=new URL("http://google.ca"); HttpURLConnection con=(HttpURLConnection)url.openConnection(); con.connect(); System.out.println(con.getResponseCode()); } catch (Exception e) { e.printStackTrace(); } } }