web-dev-qa-db-ja.com

リファラーURLに基​​づいてリダイレクト

私のサイトには、パスワードで保護されていない自分自身が運営している他のサイトへのリンクが含まれているパスワードで保護されたページがあります。私が運営している他のサイトの1つに、ページに到着した人物が「リンクページ」

(これは安全なオプションではないことを理解しています)

概要:

If Referrer = 'Links Page URL' *then* Do nothing *Else* Redirect: www.google.com.

私のサイトにコピーアンドペーストできる簡単なHTML/JavaScriptコードを知っている人はいますか?

11
JBithell
if (document.referrer !== "http://www.stackoverflow.com") {
    window.location.href = "http://www.google.com";
}

または、正規表現を使用してリファラーをチェックできます。

とにかく、このソリューションは本当に、本当に安全ではありません。ブラウザでJavaScriptをオフにするだけでリダイレクトされません...

18
Martin Majer

これを試して

    function url(url){
      return url.match(/:\/\/(.[^/]+)/)[1];
    }

    function check()
    {
      var ref = document.referrer;
      if(url(ref) =='www.google.com')
      {
          // do something
      }
      else
      {
         // redirect
         window.location.href = 'http://yourDomain.com';
      }
   }
5
Shadow