重定向IF引荐来源网址匹配目标

伊万

如果引荐来源网址与加载的网站匹配,我想重定向到其他页面。我想这样做是因为我在多个网站上同时运行了一个php rotator脚本。但是,如果我的网站A在网站ABCD上做广告,我希望网站A仅在引荐来源人匹配站点BC或D时显示,或者不显示引荐来源人匹配站点A的情况。这是为了防止在自身上显示相同的网站。

该脚本是在iframe中加载的php脚本。它没有引荐来源的伪装或类似的东西。我可以在rotator脚本中包含任何javascript或php。

任何想法或指针,将不胜感激。谢谢!

人物传记作者

抱歉,这有点长,但是我想确保已正确回答。

让我们清楚一点,并使用一致的术语来确保我们在同一页面上:

重定向意味着捕获对当前页面的请求,并将其指向另一个页面。

例如,在地址栏中
输入“ http://gooogle.com ”将执行重定向到“ http://google.com ”的操作

重定向的种类繁多,我们在这里不再赘述。

引荐来源网址表示链接到所请求页面的URI(从HTTP标头中提取)

例如:
你在网页“上http://slate.com
你点击一个链接,带你到“ http://newsweek.com
您的引用者是“ http://slate.com ”在这种情况下, 。

重定向可能会修改引用的值,具体取决于重定向的类型。

为了实现您想要的目标:不在当前页面的iframe中展示广告,您实际上并不关心这两个方面。您不需要任何重定向,也不需要担心谁链接到当前页面。


考虑页面的工作方式:

有一个在页面加载时执行的javascript,可将iframe插入您的文档中。
该iframe依次将PHP文件加载到显示广告的服务器上。

因此,您有一个看起来像这样的HTML页面:
index.html

<!doctype HTML>
<html>
  <head><title>Server A Index</title></head>
  <body>
    <header>
      <section id="top_banner_ad">
        <script src="./js/adrotator.js"></script>
      </section>
    </header>
    <!-- Some content... -->
  </body>
</html>

它将调用如下所示的JavaScript:
/js/adrotator.js

var holder = document.getElementById("top_banner_ad");
var iframe = document.createElement("iframe");
iframe.src = "http://example.com/inc/adrotators.php";
holder.appendChild(iframe);

最后,它将调用一个类似于以下内容的PHP脚本:
/inc/adrotators.php

<!doctype HTML>
<html>
  <head><title></title></head>
  <body>
    <?php $advert = get_advert(); ?>
    <a href="<?php echo $advert['url']; ?>">
      <img src="<?php echo $advert['imgsrc']; ?>">
    </a>
  </body>
</html>

我不确定在这种情况下您可以访问什么,但是我将假设您可以访问所有这些内容:托管脚本的页面(index.html),创建iframe的javascript(/ js / adrotator.js)和iframe调用的php脚本(/inc/adrotator.php)。

您至少有2个解决方案:

您可以让/js/adrotator.js从index.html找出并告诉/inc/adrotator.php是谁,或者可以让/inc/adrotator.php找出其父框架是谁。

  • 因此,iframe知道其父框架(尽管它们只能在某些情况下进行实际通信)。
    如果您的iframe加载的页面位于同一域(子域很重要),则一种解决方案是在iframe中包含一个javascript(在PHP生成的HTML中)检查其父级,如下所示:

    parent.document.location.href 
    

    如果目标域与父域匹配,则请求一个新广告。

  • (首选)如果可以修改在页面中创建iframe的javascript,则可以让javascript检查url并将其作为url参数添加到它调用的iframe的src属性中。
    例如:

    var host_url = window.location.href;  
    var iframe = document.createElement("iframe");  
    iframe.src = "http://example.com/ad_rotator.php?host="+ host_url;
    document.body.appendChild(iframe);
    

    然后,您的PHP脚本将不会投放目标匹配$ _GET [“ host”]的广告

    <?php 
      $advert = get_advert();
      while ($advert['url'] == $_GET['host']) {
        $advert = get_advert();
      }
    ?>
    <a href="<?php echo $advert['url']; ?>">
      <img src="<?php echo $advert['imgsrc']; ?>">
    </a>
    

这里的所有代码都是未经测试的伪代码,您肯定需要对其进行修改,这只是一个开始

如果您无法修改用于加载广告的PHP,也无法修改用于注入iframe的脚本,那么您的工作就大功告成了。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Nginx:只允许访问与位置名称匹配的引荐来源网址

来自分类Dev

301重定向目标网址格式

来自分类Dev

引荐来源网址查询字符串

来自分类Dev

AuthenticationSuccessHandler,在登录和引荐来源网址后重定向

来自分类Dev

根据引荐来源网址重定向

来自分类Dev

在python请求中更改引荐来源网址

来自分类Dev

如何使用PHP获取引荐来源网址?

来自分类Dev

来自引荐来源网址的Nginx块

来自分类Dev

重定向那些没有任何引荐来源网址的网址

来自分类Dev

谷歌播放引荐来源网址和本地安装的应用引荐来源网址

来自分类Dev

Application Insights是否跟踪引荐来源网址?

来自分类Dev

在使用htaccess 404重定向时如何查找引荐来源网址?

来自分类Dev

匹配的Google AdWords引荐来源网址

来自分类Dev

仅允许来自特定引荐来源网址的用户(重定向其余用户)-HTACCESS

来自分类Dev

如何解决“引荐来源网址https://www.googleapis.com/与引荐来源网址限制不匹配...”

来自分类Dev

重定向前在Express应用中设置自定义引荐来源网址

来自分类Dev

没有引荐来源的ASP.NET重定向

来自分类Dev

php:重定向到引荐来源网址,但向querystring添加一些内容

来自分类Dev

301重定向目标网址格式

来自分类Dev

apache重定向中的精确网址匹配

来自分类Dev

防止cURL引荐来源网址欺骗

来自分类Dev

通过JavaScript根据引荐来源网址重定向页面

来自分类Dev

引荐来源网址如何与当前网址相同?

来自分类Dev

网址重定向完全匹配(包括参数)

来自分类Dev

通过引荐来源从一个域的所有子域重定向用户

来自分类Dev

匹配的Google AdWords引荐来源网址

来自分类Dev

重定向回引荐页面

来自分类Dev

如何通过htaccess将引荐来源网址页面重定向到test.html?

来自分类Dev

获取用户注册的来源/引荐来源网址

Related 相关文章

  1. 1

    Nginx:只允许访问与位置名称匹配的引荐来源网址

  2. 2

    301重定向目标网址格式

  3. 3

    引荐来源网址查询字符串

  4. 4

    AuthenticationSuccessHandler,在登录和引荐来源网址后重定向

  5. 5

    根据引荐来源网址重定向

  6. 6

    在python请求中更改引荐来源网址

  7. 7

    如何使用PHP获取引荐来源网址?

  8. 8

    来自引荐来源网址的Nginx块

  9. 9

    重定向那些没有任何引荐来源网址的网址

  10. 10

    谷歌播放引荐来源网址和本地安装的应用引荐来源网址

  11. 11

    Application Insights是否跟踪引荐来源网址?

  12. 12

    在使用htaccess 404重定向时如何查找引荐来源网址?

  13. 13

    匹配的Google AdWords引荐来源网址

  14. 14

    仅允许来自特定引荐来源网址的用户(重定向其余用户)-HTACCESS

  15. 15

    如何解决“引荐来源网址https://www.googleapis.com/与引荐来源网址限制不匹配...”

  16. 16

    重定向前在Express应用中设置自定义引荐来源网址

  17. 17

    没有引荐来源的ASP.NET重定向

  18. 18

    php:重定向到引荐来源网址,但向querystring添加一些内容

  19. 19

    301重定向目标网址格式

  20. 20

    apache重定向中的精确网址匹配

  21. 21

    防止cURL引荐来源网址欺骗

  22. 22

    通过JavaScript根据引荐来源网址重定向页面

  23. 23

    引荐来源网址如何与当前网址相同?

  24. 24

    网址重定向完全匹配(包括参数)

  25. 25

    通过引荐来源从一个域的所有子域重定向用户

  26. 26

    匹配的Google AdWords引荐来源网址

  27. 27

    重定向回引荐页面

  28. 28

    如何通过htaccess将引荐来源网址页面重定向到test.html?

  29. 29

    获取用户注册的来源/引荐来源网址

热门标签

归档