我需要显示来自外部页面的内容。这是我的代码:
<?php
$homepage = file_get_contents('http://www.domain.com');
echo $homepage;
?>
它可以工作,但图像、链接和js文件的所有路径/链接都已断开。如何做到这一点,同时保留原始链接?当我点击"查看页面来源"时,它会将图像显示为
<img src="images/blah.jpg" />
相反,它需要显示原始域名,如下所示:
<img src="http://www.domain.com/images/blah.jpg" />
它需要对所有链接、javascript文件和图像执行此操作。
问题是页面使用的是相对链接,因此它使用的是您托管的域名,而不是您获取内容的域名。
正确的做法是使用标头函数重定向用户,该函数还将发送正确的302 HTTP代码
header('Location: http://www.domain.com/');
我可以告诉你的唯一选择是找到并重写任何没有域的标签,但这很麻烦,因为你会错过任何动态生成的标签。另一种选择,但更狡猾和错误的是,写一个100%高宽的iframe,并将那里的页面显示为来自您的域。但这似乎有点粗鲁,除非它真的是你的网站。