ChatGPTのクローラーBotを拒否する方法
ChatGPTのクローラーBotを拒否する方法をまとめていきます。プライバシーの観点からChatGPTなどAIクローラーに自サイト・ブログの情報を利用されるのは嫌なので拒否していきます。
CloudFlareによると、2023/08/22時点でChatGPTのクローラーBot(GPTBot)が20位で、結構Web上をクローリングしていることがわかります。
方法としてはrobot.txtで拒否するか、.htaccessで拒否するかの2つがあります。簡単に違いは以下の通り。
方法 | robots.txt | .htaccess |
---|---|---|
対象 | 検索エンジンのクローラーやボット | すべてのクライアント(ボット、ブラウザなど) |
動作 | ボットに特定のページへのアクセスを「お願い」する | 特定のIPやユーザーエージェントからのアクセスを強制的に拒否 |
拒否 | 任意(ボットが無視することも可能) | 強制的(対象クライアントはアクセスできない) |
設置場所 | サイトのルートディレクトリ | 対象となるディレクトリ |
技術 | テキストファイル(特定のユーザーエージェント対象) | Apacheサーバーの設定ファイル(詳細なアクセス制御) |
【方法1】robot.txtで拒否する
ご自身で管理しているrobot.txtに以下を追記します。robot.txtを設置していなければ、「robot.txt」のテキストファイルを作成、以下を記述、ルートディレクトリ配下に配置しましょう。
GPTBotはOpenAIのChatGPTが利用するクローラーBotで、CCBotは非営利団体Common Crawlが開発するクローラーBotでChatGPTが利用するビックデータを収集する団体なので同様に拒否します。
UUser-agent: GPTBot
Disallow: /
User-agent: CCBot
Disallow: /
公式サイトは以下
動作確認はGoogleサーチコンソールのrobos.txtテスターで確認してください。
【方法2】.htaccessで拒否する
.htaccessで拒否する場合は以下の通りです。自分は.htaccessでその他bot含めて管理しているのでこちらで拒否しました。.htaccessに詳しくないのであれば、robot.txtで拒否した方がいいです。
#AI関連のbot
SetEnvIf User-Agent "GPTBot" deny_bot
SetEnvIf User-Agent "CCBot" deny_bot
<RequireAll>
Require all Granted
Require not env deny_bot
</RequireAll>
動作確認はPCのコマンドプロンプト、ターミナルからcurlコマンドで確認できます。
curl -H "User-Agent: GPTBot" https://XXX.com/
403で拒否されていたら動作確認完了です。
<title>403 Forbidden</title>
以上!