私は、焦点の多くが画像そのものであるサイトを持っています。 AdSense広告が表示された状態でWebサイトに直接アクセスすると、画像は通常の高品質で表示されます。
ロボットが画像にアクセスすると、透かしが入ったバージョンが表示されます。この理由は、サイトの写真家が高品質の写真を撮るのに時間を費やし、それから利益を得ることができればいいからです。
私が1か月間試したのは、ユーザーがクリックしたときに透かしの付いた画像にスタンプが付けられてからウェブサイトについての詳細を知ることができるように、透かしの付いたバージョンの画像にGoogleでインデックスを付けることです。問題は、単一の透かし入り画像がインデックス付けされていないことです。
過去に私がやったことは、誰もが同じ方法で画像を見ることができるようにすることで(変更なし、透かしなし、高品質)、すべての画像にインデックスが付けられました。私のウェブサイトや広告を見なくても、人々は単にGoogleから画像をダウンロードすることができるので、それは間違いだとわかりました。
どちらの場合も、有効なURLを指すサイトマップを送信しましたが、noindexまたはnoimageindexロボットタグを使用せず、画像へのアクセスを拒否するためにrobots.txtを使用しませんでした。
Googleで透かしを入れた画像にインデックスを付ける方法はありますか?
ここに記事があります これについて、彼らがそれを実装する方法を説明しています。自分のサイトで完全な画像を表示しますが、Google画像検索では透かし入りバージョンのみを表示します。
基本的な手法は、HTTPリファラーとユーザーエージェントに基づいて、提供するバージョン(透かしまたはクリーン)を選択することです。
これにより、Googlebotはクリーンバージョンを表示できます(したがって、ランク付けできるようになります)が、ユーザーがサイトにアクセスして初めてクリーンバージョンが表示されるようになります。
理想的な方法は、nginxレベルでこれを処理することです。
このようなことをしてください:
これをnginxの設定に追加してください。
map $http_user_agent $limit_bots {
default 0;
~*(google|bing|yandex|msnbot) 1;
~*(AltaVista|Googlebot|Slurp|BlackWidow|Bot|ChinaClaw|Custo|DISCo|Download|Demon|eCatch|EirGrabber|EmailSiphon|EmailWolf|SuperHTTP|Surfbot|WebWhacker) 1;
~*(Express|WebPictures|ExtractorPro|EyeNetIE|FlashGet|GetRight|GetWeb!|Go!Zilla|Go-Ahead-Got-It|GrabNet|Grafula|HMView|Go!Zilla|Go-Ahead-Got-It) 1;
~*(rafula|HMView|HTTrack|Stripper|Sucker|Indy|InterGET|Ninja|JetCar|Spider|larbin|LeechFTP|Downloader|tool|Navroad|NearSite|NetAnts|tAkeOut|WWWOFFLE) 1;
~*(GrabNet|NetSpider|Vampire|NetZIP|Octopus|Offline|PageGrabber|Foto|pavuk|pcBrowser|RealDownload|ReGet|SiteSnagger|SmartDownload|SuperBot|WebSpider) 1;
~*(Teleport|VoidEYE|Collector|WebAuto|WebCopier|WebFetch|WebGo|WebLeacher|WebReaper|WebSauger|eXtractor|Quester|WebStripper|WebZIP|Wget|Widow|Zeus) 1;
~*(Twengabot|htmlparser|libwww|Python|Perl|urllib|scan|Curl|email|PycURL|Pyth|PyQ|WebCollector|WebCopy|webcraw) 1;
}
ロケーションブロックでボットを次のように確認します(これは一般的なもので、watermark.jpg
のみを確認することもできます)
location / {
if ($limit_bots = 1) {
rewrite ^/images/(.*).(png|jpg|gif) /images/bot/$1.$2 ;
}
}
コメントで既に述べた理由のため、あなたはそれをするべきではありません。ユーザーエージェント文字列でフィルタリングできます。ボットが提供する約300の一般的なユーザーエージェントのリストは、 http://www.robotstxt.org/db.html にあります。そのリストを実行して、表示するものを決定します。しかし、すべての写真でこれを行うのですか?ログを確認して、どのボットが訪問しているかを確認し、それらのボットのみを確認することもできます。ただし、すべての画像にマークを付けて、支払い後にのみ高品質を提供することをお勧めします。
ユーザーエージェントのストーリーは次の場所での答えです: https://stackoverflow.com/questions/422969/how-to-recognize-bots-with-php