2016-10-10 75 views
1

我想使用cURL获取页面内容,但是当我得到它页面CSS样式不是加载属性,我不知道为什么。cURL获取像iframe一样的页面内容

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 
curl_setopt($ch, CURLOPT_URL,"http://some-page.com/"); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); 
$result=curl_exec ($ch); 
curl_close ($ch); 
echo $result; 

第二件事情是,我才可以得到使用卷曲完整的工作页面就像是通过iframe的歌厅页?现在所有的链接都被重写,所以当我想要去子页面时它不起作用。

回答

1

CSS(也可能是一些JavaScript)不会加载,因为它们使用的绝对或相对路径对您的域没有任何意义。

您将需要在cURL响应中找到所有这些链接,并将其替换为域上的有效URL(并且可能会重写常规HTML链接和其他资源)。

最好的办法是将Apache配置为反向代理,以便为您完成所有这些工作。见ProxyPass

+0

我没有访问Apache,因为它在共享主机上,你能给我一些提示,我怎么能以其他方式做到这一点? –

+0

我在这个主题找到答案:http://stackoverflow.com/questions/6615971/is-it-possible-to-use-curl-with-relative-path-in-php解决:) –