prodavecmacdonalds
@prodavecmacdonalds
коммуницирую

Как достать doctype страницы по ссылки?

Вставляю сайт в iFrame и нужно предварительно узнать doctype этого сайта в переменную, дабы позже проверять средствами jQuery на наличие запрета отображения во фрейме
Нужно запихнуть сторонний сайт в iFrame предварительно проверяя позволяет ли doctype отображать его во фрейме.

Что ж, долго ковыряв вопрос я наткнулся на решение, держите php скрипт
$error=false;
$urlhere='http://facebook.com';
$ch = curl_init();

$options = array(
        CURLOPT_URL            => $urlhere,
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HEADER         => true,
        CURLOPT_FOLLOWLOCATION => true,
        CURLOPT_ENCODING       => "",
        CURLOPT_AUTOREFERER    => true,
        CURLOPT_CONNECTTIMEOUT => 120,
        CURLOPT_TIMEOUT        => 120,
        CURLOPT_MAXREDIRS      => 10,
);
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch);
$headers=substr($response, 0, $httpCode['header_size']);
$headersDown = mb_strtolower($headers);
if(strpos($headersDown, 'X-Frame-Options: deny')>-1||strpos($headersDown, 'X-Frame-Options: SAMEORIGIN')>-1) {
        $error=true;
}
$httpcode= curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo json_encode(array($error));


отправите переменную в $urlhere обратно получите json_encode(array($error)), проверяйте и получайте удовольствие
  • Вопрос задан
  • 234 просмотра
Решения вопроса 1
prodavecmacdonalds
@prodavecmacdonalds Автор вопроса
коммуницирую
Что ж, долго ковыряв вопрос я наткнулся на решение, держите php скрипт
$error=false;
$urlhere='facebook.com';
$ch = curl_init();

$options = array(
CURLOPT_URL => $urlhere,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => true,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_ENCODING => "",
CURLOPT_AUTOREFERER => true,
CURLOPT_CONNECTTIMEOUT => 120,
CURLOPT_TIMEOUT => 120,
CURLOPT_MAXREDIRS => 10,
);
curl_setopt_array($ch, $options);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch);
$headers=substr($response, 0, $httpCode['header_size']);
$headersDown = mb_strtolower($headers);
if(strpos($headersDown, 'X-Frame-Options: deny')>-1||strpos($headersDown, 'X-Frame-Options: SAMEORIGIN')>-1) {
$error=true;
}
$httpcode= curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo json_encode(array($error));

отправите переменную в $urlhere обратно получите json_encode(array($error)), проверяйте и получайте удовольствие
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@GreatRash
Только средствами сервера. Есть конечно document.doctype, но он вам недоступен будет скорее всего.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы