Diffbotとは
Diffbotは米カリフォルニアの企業が運営するAIデータ収集サービスです。Webページを構造化データに変換し、企業の知識グラフ構築やAI学習データとして販売するビジネスモデルを持っています。User-Agentは Diffbot と表記されています。
GPTBotやClaudeBotと異なり、Diffbotはrobots.txtを必ずしも遵守しないという報告が多く見られます。そのため、robots.txtだけでなく、サーバーレベルでのブロックが推奨されます。
robots.txtでの設定
User-agent: Diffbot
Disallow: /
Nginxでのブロック
robots.txtを無視する場合に有効な方法です:
server {
# Diffbotブロック
if ($http_user_agent ~* "Diffbot") {
return 403;
}
# ...
}
Apache(.htaccess)でのブロック
RewriteEngine On
RewriteCond %{HTTP_USER_AGENT} Diffbot [NC]
RewriteRule .* - [F,L]
Next.js Middlewareでのブロック
// middleware.ts
import { NextRequest, NextResponse } from 'next/server';
export function middleware(request: NextRequest) {
const ua = request.headers.get('user-agent') ?? '';
if (/diffbot/i.test(ua)) {
return new NextResponse('Forbidden', { status: 403 });
}
return NextResponse.next();
}
export const config = {
matcher: '/((?!_next/static|favicon.ico).*)',
};
Cloudflare WAFルール
Cloudflareを使っている場合、WAFカスタムルールで設定します:
- 条件:
http.user_agent contains "Diffbot" - アクション: Block
Diffbotに加えて他のAIボットも一括ブロックする
Diffbot単体ではなく、すべてのAIボットを一括でブロックしたい場合は、AI Access MonitorのTollgate機能が便利です。robots.txtへの一括設定と、サーバーレベルでのブロックコードを自動生成します。