用于远程视图的PHP代理脚本

用于远程视图的PHP代理脚本,php,proxy,Php,Proxy,我正在尝试创建一个简单的系统,将网站加载到iframe中,以允许通常会被跨域问题阻止的内容 我已经尝试了几个代理脚本加载,除了返回不包括脚本、css和其他资源之外,这些脚本似乎都能正常工作 有没有一个好的脚本可以让我浏览这个网站,或者有一个使用cURL的可靠方法 编辑: 我真的做到了: $url = $_GET['url']; $content = file_get_contents($url); // Fix href= statements $content = str_replace

我正在尝试创建一个简单的系统,将网站加载到iframe中,以允许通常会被跨域问题阻止的内容

我已经尝试了几个代理脚本加载,除了返回不包括脚本、css和其他资源之外,这些脚本似乎都能正常工作

有没有一个好的脚本可以让我浏览这个网站,或者有一个使用cURL的可靠方法

编辑:

我真的做到了:

$url = $_GET['url'];

$content = file_get_contents($url);

// Fix href= statements 
$content = str_replace('src="','src="'.$url.'/',$content);
$content = str_replace('href="','href="'.$url.'/',$content);

echo $content;
这很有效,我遇到了两个问题:

  • “src”和“href”replace在亲属关系上非常有用,但我需要确定src是相对的还是绝对的

  • 网站上的链接保留在原来的网站上,否定了“代理”,我想我可以通过回指来修复它http://www.website.com/index.php?url=http://www.other-site.com/[PATH]


  • 你想要客户端(
    iframe
    )或服务器端(
    php
    )?最终它将以一个iframe结束(可能与这个问题无关),但我正在做这个服务器站点。很难创建一个好的代理脚本,因为ajax诞生了,事情变得非常困难这不是一件很简单的事情,可能您应该使用它来解析源代码并迭代每个要替换(img、a等)中URL的标记,并使用一个函数来确定给定的路径是绝对的、相对的还是完整的URI,并根据需要进行替换。甚至Apache的反向代理在某些情况下也会遇到这种情况,所以需要做一些工作才能开始,但DOM应该会大大简化事情。是的,看起来这是我必须要做的方向。我不想在页面加载时做很多事情——主要是能够传递一些JavaScript和CSS——它不需要是完美的1对1,但close将是理想的。