- PR -

refererから返ってくるnullの判定方法

1
投稿者投稿内容
めぐりん
会議室デビュー日: 2004/10/01
投稿数: 5
投稿日時: 2004-10-01 14:05
初めまして。ひよっこですがよろしくお願いします。

さていきなりなんですが、今JSP,servletを利用してログ解析ツールもどきを
作っております。
他のサイトで「refererでほぼ完全にリンク元を取得する方法ってありますか?」
なんて質問をしたところ、(今考えるとお馬鹿なことを聞いているのですが)

「ブラウザがリクエストを出しているのかHTMLDocumentがリクエストを出しているのかによります。
ブラウザがリクエストを出している場合は、
 アドレス直接入力によるアクセス
 お気に入りからのアクセス
 リンクファイルからのアクセス
 など
このような場合は、もともとリンク元情報がないために、リファラヘッダがないまたは、あっても
何も情報がない状態でリクエストを出します。
これに対して、HTMLDocument(つまりウェブページのリンク)からリンクされた場合は、
リファラヘッダにリンク元の情報をのせてリクエストを出します。
リファラヘッダの情報が取得できないのはこのためです。」

と回答して頂けました。
ここで、refererがnullになる場合というのは、
・上記にある「ブラウザがリクエストを出している場合
・クライアント側のセキュリティソフトの設定による場合
大きく分ければこの2つになるかと思うのですが、この2つを判定(見分ける?)方法は
ないのでしょうか?
ブラウザがリクエストを出している場合→refererをbookmarkとする。
セキュリティソフトが関与している場合→refererを「セキュリティで取得できない」とか
設定する。
こんな風に分けられれば…と思うのですが。
ちんぷんかんぷんなことを言っていたら申し訳ありません。どうかよろしくお願い致します。

山本 裕介
ぬし
会議室デビュー日: 2003/05/22
投稿数: 2415
お住まい・勤務地: 恵比寿
投稿日時: 2004-10-01 16:05
>大きく分ければこの2つになるかと思うのですが、この2つを判定(見分ける?)方法は
>ないのでしょうか?
この2つがどのようなリクエストを出してるかのぞき見て比べてみてはいかがでしょうか?
自分で実際にリクエストを見て理解するのが一番実になります。
以下のようなソフトでリクエスト内容を取得することができます。

パケットキャプチャ系
・Ethereal
http://www.ethereal.com/
・Packetyzer
http://www.networkchemistry.com/products/packetyzer/

プロキシ系
・Apache Axis > Appendix : Using the Axis TCP Monitor (tcpmon)
http://ws.apache.org/axis/java/user-guide.html
・横取り丸
http://hide.maruo.co.jp/software/ydm.html
めぐりん
会議室デビュー日: 2004/10/01
投稿数: 5
投稿日時: 2004-10-01 18:08
インギさん、ご返信有難うございます。

早速試してみます^^
1

スキルアップ/キャリアアップ(JOB@IT)