php - cURL像iframe一样获取页面内容

标签 php curl iframe file-get-contents

我想使用 cURL 获取页面内容,但是当我获取它时,页面 css 样式未正确加载,我不知道为什么。

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 获取页面一样使用 cURL 完整工作页面?目前所有链接都被重写,因此当我想转到子页面时它不起作用。

最佳答案

CSS(可能还有一些 Javascript)无法加载,因为它们使用的绝对或相对路径对您的域没有任何意义。

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

您最好的选择可能是将 Apache 配置为反向代理,这样它就会为您完成所有这些工作。请参阅ProxyPass .

关于php - cURL像iframe一样获取页面内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39963827/

相关文章:

php - 在 PHP CURL 中设置 cookie

iframe - 从 iFrame embed API 获取 YouTube 视频信息

javascript - WooCommerce 单一产品页面上的倒计时器,直到产品销售结束

php - elastic beanstalk 使用 cron.yaml 设置 php crontab

php - 从本地开发服务器进行远程数据库管理

PHP按值合并数组为2个不同的数组值

php - 使用 cURL 和 Mailchimp API v3 更新列表中的订阅者

php - 如何使用 PHP 和 CURL 使用多维 POSTFIELDS 上传文件(多部分/表单数据)?

javascript - 加载 iframe 后在 iframe 中执行 JavaScript 代码?

javascript - 刷新 iframe 吗?