Нужно на моей странице отобразить сторонний сайт, под моей учёткой(нужно подкинуть куки при открытии этого сайта).
Сперва нагуглил iframe, но как я понял он не поддерживает сайты с https протоколом и нужный мне сайт не загружался. Потом искал решение этой задачи на беке(тоесть на php). Пытался использовать curl:
@ini_set('error_reporting', E_ALL);
@header("Content-type: text/html; charset=UTF-8");
$ch = curl_init('https://example.net/');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 120);
curl_setopt($ch, CURLOPT_HTTPHEADER, array("Cookie: sessionid=6njht6ypdg535s2kfu2b9tlz1z5hxrew", "Referer: https://example.net/", "Origin: https://example.net/"));
curl_setopt($ch, CURLOPT_REFERER, 'https://example.net/');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$page = curl_exec($ch);
curl_close($ch);
$site = 'https://example.net/';
$page = str_replace("<head>", "<head>\n<base href=\"" . $site . "\" />", $page);
$page = str_replace("<HEAD>", "<head>\n<base href=\"" . $site . "\" />", $page);
echo $page;
Страница отображается, стили подхватываются, куки тоже, но запросы летят от лица моей локалки а не целевого сайта, из-за чего возникают ошибки доступа CORS policy:
spoiler
Access to fetch at '
https://example.net' from origin '
localhost' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.
И ещё проблема с сылками, вместо перехода по ним, нужно их пропускать через curl и отображать резуальтат на моём сайте.
Есть ли другой способ отображения стороннего сайта на странице с возможностью применить к нему куки и перемещаться по сайту внутри этой обертки? Либо можно как-то починить запросы с curl?