자바스크립트로 웹페이지에 유튜브를 불러올 때 발생한 오류.
X-Frame 이란?
ClickJacking 과 같은 공격을 무력화 하기위해 X-Frame-Options 같은 확장 해더를 이용할 수 있다.
X-Frame-Options 을 통해 브라우저가 <frame>, <iframe> 혹은 <object> 태그를 렌더링 해야하는지 막아야하는지를 알려준다.
X-Frame-Options 은 다음 세가지 값 중 하나를 사용할 수 있다.
DENY | 해당 페이지는 frame 내에서 표시할 수 없다. |
SAMEORIGIN | 해당 페이지와 동일한 orgin에 해당하는 frame 내에서 표시를 허용한다. |
ALLOW-FROM uri | 해당 페이지는 지정된 orgin에 해당하는 frame 내에서 표시할 수 있다. |
각 웹서버 별 X-Frame-Options 해더를 response에 추가하기 위한 방법은 다음과 같다.
Header always append X-Frame-Options SAMEORIGIN |
add_header X-Frame-Options SAMEORIGIN; |
< system.webServer > ... < httpProtocol > < customHeaders > < add name = "X-Frame-Options" value = "SAMEORIGIN" /> </ customHeaders > </ httpProtocol > ... </ system.webServer > |
X-Frame-Options 는 그 명칭에서도 알 수 있듯이 확장 해더이기때문에 모든 브라우저가 해당 옵션에 대해 동작하는것은 아니다.
크롬 4.1 , IE 8 , 오페라 10.5 , 사파리 4.0 , 파이어폭스 3.6.9 이상에서는 DENY , SAMEORIGIN 이 적용되며, ALLOW-FROM 은 각 브라우저 마다 지원 현황이 다르다.
출처 : http://www.yunsobi.com/blog/612
해결방법:
youtube url을 embed하여 가져옴.
'Javascript' 카테고리의 다른 글
Contenteditable 와 Input 차이 (0) | 2018.04.07 |
---|---|
JDBC와 DBCP의 차이 (0) | 2018.03.27 |