Если вы запустите фрагмент кода ниже:
<iframe src="https://www.youtube.com"></iframe>
Затем посмотрите на инструменты разработчика, он выдаст ошибку:
Отказал отображать 'https://www.youtube.com/' в кадре, потому чтоон устанавливает «X-Frame-Options» на «sameorigin».
Это потому, что сайт, к которому вы пытаетесь получить доступ к встраиванию ограничений (через iframe
, frame
, embed
, object
) к тому же источнику, используя заголовок X-Frame-Options .Таким образом, youtube.com может нормально загружать фреймы со страницами youtube.com, но никто другой не может.Только администраторы сайта для встроенного сайта могут изменять этот параметр.
Если у вас есть администратор для сайта, который вы встраиваете, вы можете внести в белый список хост-сайт:
X-Frame-Options: allow-from https://my-host-site.com/
Это должно быть отправлено как заголовок HTTP сервером страницы, которую вы пытаетесь внедрить.Он не будет работать как тег meta
внутри HTML head
.Таким образом, браузер узнает, что вы встраиваете сайт, и сайт, на котором вы размещаете, чтобы показать страницу в iframe
.