自分のサイトのページを更新すると、サーチエンジンのロボット(クローラ)が「見に来る」ようですが、更新されたことをどうやってチェックしているのでしょうか?
まずアクセスして更新されたかどうか内容をチェックするのだろうと思っていたのですが、更新しないとクローラのアクセスがなく、更新するとそれっとばかりに「見に来る」ようなのですが⋯。
とりあえずアクセスして内容が変わっているかどうか調べるのであれば、更新していなくてもアクセスログに残りますよね?
ブラウザがファイルを要求してダウンロードするようなデータの流れなしで、ネット上のサイトのファイルのタイムスタンプを読みとれるものなのでしょうか?
どなたかご存知の方、教えてください。
No.2ベストアンサー
- 回答日時:
取れますよ。
普段ブラウザには表示されませんが、実はブラウザは内部で「HTTPヘッダ」と呼ばれる情報を受け取っています。
このヘッダにはサーバー情報や接続情報などのほかに、「これから受信しようとしているファイルの情報」も含まれています。
それを見て、ファイルサイズとそのファイルの最終更新日付を知ることができます。
通常ロボットは、現在手元にあるファイルの情報と比較し、「ヘッダに日付があればそれを見て更新されたかどうかを判断。日付が渡ってこなければサイズを見て判断」というロジックで、サーバー上のファイルの更新状況を判断します。
更新されていなければ、アクセスを中止すればいいんです。
ただし、それを知るためには「サーバー側がそういう情報を返すように設定されている」ことが条件です。
中には、プロバイダのポリシーなどにより、ファイルサイズも日付もどっちも返さないようなサーバーもあります(滅多にないですけどね)。
そういうサーバー上にあるファイルにアクセスする場合、更新されたかどうかをあらかじめ知ることはできません。
No.5
- 回答日時:
更新日付の話を書き忘れてました(^_^;
滅多に返ってこないのは、お手持ちのチェックツールが悪いわけではありません。
サーバーの設定をするプログラマが悪いのです。
まぁ、端的に言って面倒くさいんですな。
実際、どういう「日付形式」にすればいいのかという仕様が決まっているわけではないので、仮にあったとしても「クローラが解析しやすい形式」になかなかできないんですよ(^_^;
だもんで、「ああ、もういいや! メンドくさ!」って感じで、手間を省くために日付を返さないように設定するんです。
この回答への補足
> たまたまそういうふうに見えるだけです。
やっぱりそうなんですか。私が管理しているある通販サイトで、15ある商品カテゴリの中で(それぞれ10~30ページくらい商品ページがあります)商品入れ替えや価格改定などの変更があったカテゴリのページだけにアクセスしてくるように思えたものですから…。
Googleなども最近データ収集の方法を大幅に変更したらしいですし、おっしゃるように「実際にはもっと複雑」なんでしょうね。
ただ、ひとつ疑問が残ります。
> 中には、プロバイダのポリシーなどにより、ファイルサイズも日付もどっちも返さないようなサーバーもあります(滅多にないですけどね)。
ということですが、実際に5ヵ所ほどあのツールでチェックしてみたら、どこも.htmlファイルの更新日を返しませんでした。
ひょっとして、「サーバーの設定をするプログラマが悪い」というのは自分のことかなと…。
今までSSIを.htmlで使えるようにするとか、ファイルリスト取得禁止やエラー画面のカスタマイズなどを.htaccessで設定してきましたが、更新日を返すかどうかも.htaccessで設定できるのでしょうか?
すみません、「.htaccessで設定できることは?」みたいな質問を別にするべきですかね…。
No.4
- 回答日時:
>更新したときだけクローラが「見に来る」
これはたまたまそういうふうに見えるだけです。
以前の更新頻度から、だいたいの次回更新時期を察知してその想定のもとにデータを取りに来ます。
無意識のうちに定期的に更新している人には、クローラがあらかじめ別の方法で更新を察知しているように見えるのです。
(実際にはもっと複雑ですが)
俺は最近自分ちのログチェックにハマってるから分かるんですけど、あなたの更新作業を目で見て「あ、行かなきゃ」って思ってるわけじゃないのですよ。
No.3
- 回答日時:
>HTTPヘッダを見るツールなんてものはないんでしょうか
あー。あってもよさそうですね。
今ベクター見たらいくつかあるみたいですよ。
「HTTP ヘッダ」で探せば出てきます。
この回答への補足
> 「HTTP ヘッダ」で探せば出てきます。
ご親切にありがとうございます。早速「httpRequest Ver.1.01」というのを使ってみました。
はじめてのことで、かなり戸惑いましたが、分かったことは、
●独自ドメインのサイトではほとんどタイムスタンプは読みとれない(.css、.js、.gif、.jpgは可能なところもある)
●いわゆるプロバイダのホームページスペースにある.htmlはOK。
というところです。となると、またまた振り出しに戻ってしまうんですが、独自ドメインのサイトで(レンタルサーバですが)更新したときだけクローラが「見に来る」のは、どうやって更新を知るのでしょうか?
自分で探さなきゃだめですよね、すみません。
補足にも書きましたが、「HTTPヘッダを見るツール」で見た限りでは、ほとんどのサイトが更新日を返さないようでした。でも、お答えには「滅多にないですけどね」とあります、このツールがだめなんでしょうか? あ、それも自分で調べないといけないですね。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
- ・ゆるやかでぃべーと タイムマシンを破壊すべきか。
- ・歩いた自慢大会
- ・許せない心理テスト
- ・字面がカッコいい英単語
- ・これ何て呼びますか Part2
- ・人生で一番思い出に残ってる靴
- ・ゆるやかでぃべーと すべての高校生はアルバイトをするべきだ。
- ・初めて自分の家と他人の家が違う、と意識した時
- ・単二電池
- ・チョコミントアイス
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELファイルに誰がアクセスし...
-
C# ファイル削除のエラーコード
-
VBAでサーバーにアクセスするに...
-
VBScriptで、ファイルから任意...
-
vbでFTPサーバーに対して、サー...
-
《エクセルVBA》「他の人が該当...
-
Thickboxの設置方法について
-
HPで流す音楽
-
ホームページのログインパスワ...
-
Dreamweaverで、一つのファイル...
-
CGIを使用してブラウザからファ...
-
ホームページの画像や音声のみ...
-
.htaccessを2つ以上設置した場合
-
XサーバーでCGIを使うには??
-
CGIでソースがそのままでてしま...
-
ログアウト処理でWebブラウザを...
-
FTPにて553エラー
-
CGI掲示板 Rainbow Channel
-
CGI初心者です
-
Webからアクセスし、画面のボタ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELファイルに誰がアクセスし...
-
《エクセルVBA》「他の人が該当...
-
VBScriptで、ファイルから任意...
-
VBAでサーバーにアクセスするに...
-
JAVAで別サーバーのファイルの...
-
空のファイル
-
Webでのファイルアップロードに...
-
tplファイルのプレビューの方法
-
C# ファイル削除のエラーコード
-
vbでFTPサーバーに対して、サー...
-
Perl 別ドメインのファイル存在...
-
自宅サーバーに大容量(1GB...
-
CGI_lite.pmを使ったファイルの...
-
検索ロボットが更新日を知る方...
-
ブラウザの戻るボタンでの動き...
-
個人的なアップローダーの設置
-
Mac OS X での Fetch 4.0.3 へ...
-
Dreamweaverで、一つのファイル...
-
basp21でのファイルアップロー...
-
C言語でCGI
おすすめ情報