【问题标题】:Redirect based on previous URL根据之前的 URL 重定向
【发布时间】:2014-09-04 19:47:59
【问题描述】:

我正在尝试做某事,但我不确定我该怎么做!

基本上,如果访问者来自 Facebook,我希望他们被重定向到不同的页面。因此,例如,如果有人分享该页面,我希望 Facebook 的未来访问者可以将访问该页面的用户重定向到主页。

如果我可以通过 .htaccess 或 jQuery 做到这一点,只要它有效,我就不会担心。

提前致谢!

【问题讨论】:

  • 您使用哪种 CMS 运行网站,或者您使用哪种语言编写网站?
  • 这是一个使用 Editable Sites CMS 的 HTML 网站。
  • Redirect based on referrer URL 的可能重复项

标签: jquery .htaccess redirect url-redirection


【解决方案1】:

就这么简单

if (document.referrer !== "http://www.facebook.com") {
    document.location.href = "http://www.example.com";
}

或者这个:

var href = document.location.href;

if (href.indexOf("facebook.com") > 0)

document.location.href = "http://www.example.com"

PHP版本:

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

    function check()
    {
      var ref = document.referrer;
      if(url(ref) =='www.facebook.com')
      {

         window.location.href = 'http://example.com';
      }
   }

【讨论】:

    【解决方案2】:

    您可以通过 JavaScript 非常简单地做到这一点。

    if(document.referrer.match("facebook.com")){ 
       window.location = "/";
    }
    

    用正确的重定向路径替换正斜杠。

    【讨论】:

      【解决方案3】:
      if (document.referrer !== "http://www.facebook.com") {
          document.location.href = "http://www.google.com";
      }
      

      或在 htaccess 中

      RewriteEngine on
      RewriteCond %{HTTP_REFERER} ^http://www\.facebook\.com [NC]
      RewriteRule ^(.*)$ http://www.google.com/ [R]
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-03-10
        • 2021-12-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多