プロが教えるわが家の防犯対策術!

Q1.「サイトA」から「自分のサイト」にアクセスされた時に、
リンク元である「サイトAのタイトル」を取得することはできますか?

Q2.「サイトA」から「自分のサイト」にアクセスされた時に、
何というキーワードのリンクからアクセスされたか、そのキーワードを
取得することはできますか?例えば、「面白ページ」というキーワードの
リンクをクリックしたら自分のページにアクセスされた。その時に、
あなたは面白ページというキーワードでアクセスしましたね、みたいな
ことを表示したいのです。

Q3.自分のサイトとは別のサーバーに置いてあるファイルのサイズ情報を
取得することはできますか?例えば、ファイルのURLを入力すると、
そのファイルサイズを調べてきてくれて表示してくれるようなこと。

※方法のヒント、サンプル、又は参考になるページを教えてください。
よろしくお願いします。

A 回答 (1件)

Q1~Q3まで。

絶対ではありませんが可能です。

前提としてリンク元については Referer(リファラ)という情報しか得られません。
これは前のページでブラウザのURL欄に表示されている内容で、例えば perlでは環境変数の$ENV{'HTTP_REFERER'}、Javascriptではdocument.referrer で参照できます。
ただし、内容については空白であったり利用者が詐称することも可能なので100%あてにできるわけではありません。(proxy経由だとさらにややこしいかも。あまり知りませんが。)

で、Refererが得られれば実際に元のページにアクセスする事でタイトルを得たり、ページのサイズを得ることもできます。
また、検索キーワードについては元のURLにキーワードが含まれているケースが多いです。
例えば
gooで「面白い」を検索すると
http://search.goo.ne.jp/web.jsp?…&MT=%CC%CC%C7%F2%A4%A4&…
googleで「面白い」を検索すると
http://www.google.com/search?…&q=%E9%9D%A2%E7%99%BD%E3%81%84&…
このようになります。それぞれMT=とq=の後ろにエンコードされた「面白い」という単語がありますので検索エンジンを特定してキーワードの部分を抽出し、またそれぞれに適したデコードを行う事で検索したキーワードを推察することができます。

ページタイトルやサイズを得るため、リンク元のページにアクセスする方法についてはphpやperl等でそこそこプログミング経験があれば可能です。
phpは未経験ですがそのための関数が在ったと記憶しています。
perlでは
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1758795
こちらの質問が参考になるでしょう。

主な検索エンジンからの検索キーワードの抽出の仕方についてはアクセス解析の(無料)CGIが参考になるかと思います。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!