Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

window.openで。。。

今、直リンクを防ぐ作業をしていまして、
<% 
    if(null==request.getHeader("Referer")){
%>
        <Meta http-equiv="refresh" content="0;url=./error.jsp"> 
<%
    }else{    
%>
こういうやり方を用いて他のページはできました。
ですが、window.openで開いた画面ではRefererがnullになって、上手くいきません。
どうしたらいいのか分かる方、返信をお願いします。

3

回答

3467

閲覧

3件の回答

評価

0

リファラがnullなら弾けば良いのでは?

評価

0

早速返信ありがとうございます。

直リンクの場合はnullで弾くのでいいんですが、
普通に遷移しようとしてもnullになってしまい
結局、エラー画面に遷移してしまうんです。

たぶん、原因はwindow.openだと考えているのですが
どうしていいのか分からない状態です。

評価

0

言っていることがいまいち分かりませんが、そのURLがクライアント側でどのように開かれたか、という情報をサーバ側で取得することはできません。
例えば

if (opener) location.replace("error.jsp");

のようなスクリプトをクライアントで実行させるくらいしかないです。

ところで、metaタグを吐き出すくらいならsendRedirect()するほうが良いのでは?

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。