Я развертываю <iframe>
на странице на Сайт А как быстрый и простой способ отобразить фрагмент со сложной страницы в другом месте на Сайт А:
<iframe src="http://site-a.com/complex-page/"></iframe>
Ничего не отображается в <iframe>
на Сайт А.
http://site-a.com/complex-page/
в браузере и страница отображается нормально.<iframe>
используя http://site-b.com/complex-page/
в качестве источника и <iframe>
отображает внешнюю страницу (внешнюю) Сайт Б, как и ожидалось.<iframe>
используя http://site-a.com/complex-page-2/
в качестве источника и, опять же, ничего не отображается в <iframe>
,Так что … это явно связано с Сайт А, если <iframe>
на Сайт А не отображает ни одну из нескольких страниц на Сайт А, но он показывает любую из нескольких страниц на Сайт Б.
Это явно не общее происхождение вопрос — Сайт А является того же происхождения, что и Сайт А.
Так что же мешает отображению внешней страницы на Сайт А?
Дополнительно:
Если я Right Click > This Frame > View Frame Source
затем я Можно см. источник HTML документа, загруженного <iframe>
… но какой бы контент или стили я не добавил в документ, ничего не отображается.
Это говорит о <iframe>
успешно получает доступ к странице, но затем (по какой-то причине) не может ее отобразить.
Вспомогательная информация: Сайт построен на стороне сервера PHP и на стороне клиента HTML5, CSS3 и Javascript.
Эту проблему было немного легче решить, когда я понял, что передо мной стоит X-Frame-Options
вопрос.
По-видимому X-Frame-Options
может иметь три значения:
DENY
SAMEORIGIN
ALLOW-FROM
[URI]X-Frame-Options
может быть установлен в .htaccess
файл, используя любое из трех значений выше.
В этом случае мне нужно было добавить следующие строки к моему .htaccess
файл:
# HEADERS
<ifModule mod_headers.c>
Header set X-Frame-Options "SAMEORIGIN"</ifModule>
Благодаря этой странице:
[Iframe] X-Frame-Options: веб-сайт не разрешает кадрирование
http://techdc.blogspot.co.uk/2015/04/iframe-x-frame-options-website-does-not.html
Других решений пока нет …