質問
私は最近、私のサイト上でのJava / 1.6.0_14(および変形)のようなユーザーエージェントを見始めました。
これは何を意味するのでしょう。それはブラウザやボットか何か
であります解決
これはおそらく誰かがJavaを使用してウェブサイトをクロールされることを意味します。あなたのrobots.txtファイルを尊重し、あなたの帯域幅かを大量に使用してクローラに気付かない限り、これは心配するものの多くではありません。通常、正当なクローラは、あなたが問題を抱えている場合はクローラーに連絡することが簡単にするために、カスタムユーザーエージェントを作成するには時間がかかりますが、彼らは、デフォルトのユーザーエージェントを使用している場合でも、それはおそらく完全に良性以上です。
あなたは404安打のスパイクまたはJavaクライアントからのヒットのの多くをの気づき行う場合は、しかし、あなたはあなたのウェブサイトにおけるセキュリティホールを探しているスパマーによる攻撃を受けそうです。あなたのサイトがうまく構築されている場合、彼らはあなたの帯域幅の一部を焼く以外に行うことができます全体の多くはそこではないのですが、彼らはセキュリティホールを発見した場合、彼らはそれを利用するようにしてくださいます。適切にスパマーに対処するこの答えの範囲を超えていますが、(非常に少なくとも短期的フィックスとして動作します)焦土ソリューションは、文字列「の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();
}
}
}
Javaの HttpURLConnection
のクラスがお送りしますUser-Agent
ヘッダとしてJVMバージョン情報