반응형
https가 적용된 사이트에서 iframe에 http url이 있어서 해당 iframe이 동작하지 않았다.
콘솔로그를 확인해보니, 콘솔창에서 아래와 같은 오류가 나왔다.
Mixed Content: The page at '
https://www.-----.---
' was loaded over HTTPS, but requested an insecure frame '
http://www.-----.---'. This request has been blocked; the content must be served over HTTPS.
볼 키워드는
Mixed Content
This request has been blocked
the content must be served over HTTPS.
결국은 '혼합된 컨텐츠다, 해당 요청은 차단됬다, 컨텐츠는 https여야한다.' 이다.
즉, https를 사용하는 사이트에서 컨텐츠부분에 http통신하는 부분이 있어 해당 http요청이 차단되었다는 의미이다.
https 으로 보안이 되있는데, 보안에 취약한 http와 통신할 수 없다는 것이다.
해결방법
★ http요청을 https로 변경한다.(해당 url이 https를 제공하지 않는다면 이 방법은 패스)
또다른 해결방법
★ http 통신하는 html/jsp에 아래와 같은 코드를 head태그 영역에 넣어준다.
<head>
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" >
</head>
HTTP Content-Security-Policy(CSP) upgrade-insecure-requests지시문은 사이트의 모든 비보안 URL(HTTP를 통해 제공되는)을 보안 URL(HTTPS를 통해 제공되는)로 대체된 것처럼 처리하도록 사용자 에이전트에 지시합니다. 이 지시문은 재작성해야 하는 안전하지 않은 레거시 URL이 많은 웹 사이트를 위한 것입니다.
반응형