2013-11-28 1 views
0

Когда я вставлять внешний HTTP IFRAME в моей HTTPS страницы, я получаю смешанное сообщение об ошибке: содержанияКак эхо внешней страницы из вашего домена

<iframe src="http://www.example.com/"></iframe> 

Чтобы обойти это ограничение, я хотел бы повторить внешняя страница из моего собственного домена. Как мне это сделать?

Спасибо!

ответ

1

Вызовите http страницу с curl (или любой другой Lib) и распечатать réponse в какой-то div (это div будет вместо iframe).

Приложите PHP страницу (который содержит iframe), если вы хотите больше направление ...

proxy.php

<?php 
    $url = "http://url-of-iframe/"; 
    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    $response = print curl_exec($ch); 

    //in case that the page does not contains the <base> tag, then add it 
    $base = '<base href="http://www.base-of-iframe.com/" /><!--[if IE]></base><![endif]-->'; 
    $response = str_replace("<head>", "<head>".$base, $response); 
?> 

page.html

<html><iframe src="https://www.yourServer.com/proxy.php"></iframe></html> 

You должен быть уверен, что "http://url-of-iframe/" является надежным сайтом! в противном случае он может загружать вредоносный контент на вашу страницу!

+0

'iframe' имеет гораздо более разную функциональность и цель, чем' div'. – Leri

+0

Все функциональные возможности могут быть реализованы по его запросу с помощью 'curl'. Это способ сделать прокси-сервер, а не такой? – MeNa

+0

Я говорю о стороне клиента. Прокси-сервер действительно не заботится о том, как запрос был сделан на транспортном уровне (т. Е. Запрашивается iframe или ajax). – Leri