HTTPS로 연 페이지가 http 주소의 스크립트나 iframe을 불러오면 브라우저는 이를 혼합 콘텐츠로 보고 막습니다. 병원 홈페이지 주소를 https로 옮긴 뒤 첫 화면은 잘 열리는데 예약 신청 창이나 오시는 길 지도만 빈칸으로 남는다면, 이 규칙 때문일 수 있습니다. 청주·충북에서 병원 홈페이지를 관리하며 예약이나 지도 기능을 외부 업체 코드로 붙여 둔 담당자라면 한 번 점검해 볼 만합니다.
혼합 콘텐츠는 무엇을 말하나요
MDN의 혼합 콘텐츠 문서는 HTTPS처럼 안전한 통로로 불러온 웹 페이지가 이미지, 스크립트 같은 자원을 HTTP 같은 안전하지 않은 방식으로 가져오는 경우를 혼합 콘텐츠라고 설명합니다. 안전하지 않게 오가는 자원은 중간에서 누군가 내용을 엿보거나 바꿀 수 있기 때문입니다. 문서는 스크립트가 페이지의 어느 부분이든 바꿀 수 있어 특히 위험하고, 이미지도 바뀌면 이용자에게 잘못된 정보를 주거나 버튼의 기능을 다르게 보이게 할 수 있다고 적었습니다.
W3C의 Mixed Content 사양은 암호화되고 인증된 문서 안에서 암호화되지 않은 연결로 콘텐츠를 가져올 때 브라우저가 어떻게 처리해야 하는지를 정한 문서입니다. 이 사양은 브라우저가 아직 막지 않던 종류의 혼합 콘텐츠를 안전한 연결로 자동으로 바꿔 요청하고, 바꿀 수 없으면 막도록 권합니다.
AI로 생성한 개념 이미지. 실제 병원 사진이 아닙니다.
브라우저가 바꿔 주는 것과 막는 것
MDN은 혼합 콘텐츠를 자동으로 https로 바꿔 요청하는 것과 막는 것으로 나눕니다.
- 자동으로 바꿔 요청하는 것: src 속성으로 넣은 img 요소, src 속성으로 넣은 audio·video 요소 등. 이때 상대 서버가 https로 그 자원을 주지 못하면 찾을 수 없다는 응답이 돌아옵니다.
- 막는 것: script 요소, 스타일시트를 불러오는 link 요소, iframe 요소, fetch와 XMLHttpRequest 요청, 웹 글꼴, srcset 속성이나 picture 요소로 넣은 이미지 등.
- 주소가 도메인 이름이 아니라 IP 주소로 적힌 이미지는 자동으로 바꾸지 않고 막습니다.
병원 홈페이지의 예약 신청 창이나 지도를 다른 회사의 화면을 iframe으로 끼워 넣거나 스크립트로 불러오는 방식으로 붙였다면, 그 삽입 코드의 주소가 http로 남아 있을 때 페이지 나머지는 열려도 그 부분만 막힐 수 있습니다. 진료시간표나 의료진 사진을 다른 서버의 http 주소로 걸어 두었다면, 그 서버가 https를 지원하지 않을 때 이미지가 보이지 않을 수 있습니다.
MDN은 안전한 페이지에서 안전하지 않은 연결로 파일을 내려받게 하는 것을 혼합 다운로드라고 부르고, 브라우저가 이를 막아야 한다고 설명합니다. 많은 브라우저는 기본으로 막으면서 위험을 알리고 이용자가 파일을 남길지 버릴지 고르게 한다고 적었습니다. 이용 안내문이나 서류 양식을 http 주소로 내려받게 했다면 함께 확인해야 합니다.
AI로 생성한 개념 이미지. 실제 병원 사진이 아닙니다.
어디에서 찾고 어떻게 고칠까요
MDN은 브라우저 개발자 도구의 콘솔에 혼합 콘텐츠를 바꾸거나 막았다는 경고가 나온다고 설명합니다. 고치는 방법으로는 다음을 듭니다.
- 자기 도메인의 모든 콘텐츠를 HTTPS로 제공합니다.
- 자기 도메인 자원을 가리키는 주소는 내려받기 파일까지 포함해 상대 주소나 https 주소로 바꿉니다.
- 다른 사이트의 자원은 https 판이 있으면 그것을 씁니다.
- http 주소를 https로 바꾼 뒤 링크 검사 도구로 모든 링크가 작동하는지 확인합니다.
메디지오의 운영 권장 점검 순서는 다음과 같습니다.
- 첫 화면, 진료시간, 오시는 길, 예약 안내처럼 방문 예정자가 자주 여는 페이지를 컴퓨터 브라우저로 열고 개발자 도구 콘솔의 혼합 콘텐츠 경고를 적어 둡니다.
- 예약 창, 지도, 상담 창을 붙인 삽입 코드에서 iframe과 스크립트 주소가 https인지 확인하고, http라면 해당 업체에 https 삽입 코드를 요청합니다.
- 진료시간표·의료진 사진·약도 이미지의 주소가 http이거나 IP 주소로 적혀 있지 않은지 확인합니다.
- 이용 안내문과 서류 양식의 내려받기 링크가 https인지 확인합니다.
- 고친 뒤에는 휴대폰과 컴퓨터에서 같은 페이지를 다시 열어 빈칸 없이 보이는지 확인합니다.
이 글은 청주·충북 지역 병원을 포함한 일반적인 병원 홈페이지의 기술 점검을 MDN과 W3C 문서에 따라 정리한 것이며, 특정 병원 홈페이지를 진단한 결과가 아닙니다. 브라우저마다 경고 표시 방식은 다를 수 있으니 실제 화면에서 확인해야 합니다.