跟踪像素应该通过引用页面加载外部网站 - 但它不起作用
Trackingpixel should load external website through a referring page - but it doesn't work
我对跟踪像素有问题。跟踪像素包含在主页上,如下所示:
<img src="tracking.gif" alt="" />
跟踪.gif包含以下内容:
<?php
header("Location: http://www.mydomain.com/referrer.php?url=http%3A%2F%2Fwww.external.com")
?>
引荐来源.php如下所示:
<?php
$url = $_GET['url'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Referring...</title>
<link rel="stylesheet" type="text/css" href="css.css" />
<meta http-equiv="refresh" content="0.3; URL=<?php echo $url ?>" />
<script type="text/javascript">
window.setTimeout(function() {
location.href = '<?php echo $url ?>';
}, 300);
</script>
</head>
<body>
Some text.
</body>
</html>
不幸的是,重定向到外部网站不起作用。只有引荐来源.php被加载。为什么?如果我将跟踪中的引荐来源网址替换为外部网站的网址,则代码有效.gif。
更多信息:如果我直接致电推荐人.php它正在工作。我通过htaccess设置了服务器,它应该处理跟踪.gif作为php文件。
提前感谢您的帮助!
您的问题的答案在于浏览器如何处理不同类型的资产,以及允许实际执行哪些资产。
您的第一段代码:
<img src="tracking.gif" alt="" />
告诉浏览器从某个位置加载和显示图像。为了做到这一点,它将对图像发出HTTP请求。这就是为什么你的第二段代码:
<?php header("Location: ....") ?>
实际有效。浏览器发送 HTTP 请求以进行跟踪.gif,响应将浏览器定向到另一个位置。这一切都很好(尽管您还应该将响应状态设置为 302
以确保完整性),并且浏览器会转到您的新 URL 以搜索图像数据。
这就是我们遇到的问题。当我们按照重定向到我们的新页面时,我们没有得到图像 - 我们得到一些 HTML。浏览器无法将其解释为图像。这似乎是无稽之谈。所以它被丢弃了。浏览器当然不会检查或执行嵌入在无意义的图像数据中的代码。它只是将数据交给负责绘制图像的管道,然后管道会说"我不明白这个"并继续下一个任务。
这就是为什么当你直接在浏览器中加载你的referrer.php
页面时,它实际上可以工作 - 因为浏览器期待HTML和Javascript。当浏览器接收到相同的数据时,结果是失败。
您似乎试图在加载图像时使浏览器转到不同的 URL,这是安全模型不允许的 - 图像文件无法将行为注入包含它们的页面。你能更详细地解开你真正想要实现的目标吗?
- 什么更好?使用iframe或jQuery之类的东西在外部网站中加载HTML文件
- 使用node.js获取外部网站内容
- 如何在其他公共网站中拉取外部网站的URL
- 具有http外部链接的SSL网站
- 控制node.js应用程序's通过外部网站举办的活动
- 可以't在dropbox托管网站中打开外部链接
- 从外部网站获取JSON数据
- 单击指向外部网站的链接后,通过MySQL保存数据
- 调整外部网站内容的大小以适应iFrame宽度
- 如何在煎茶触控 2 中自动打开外部网站
- Chrome 扩展徽章颜色外部网站 JavaScript 更改
- Google PageSpeed Insights说我的网站很重.外部模态是一种解决方案吗?
- 抓取外部网站,但返回“您必须在此站点上使用支持 JavaScript 的浏览器”错误
- 监控外部网站的HTTP请求
- 使用颜色框在弹出窗口中加载外部网站
- 如何在运行时应用外部网站的样式
- 如何在外部网站上提交表单并获得生成的 HTML
- 将VBA转换为与外部网站交互
- 从外部网站获取谷歌地图数据
- 如何防止网站外部的 API 调用