2014-10-17 3 views
1

내 Djanog 웹 애플리케이션에 SSL 보안이 추가되었습니다. 이제 django 응용 프로그램에서 http : //를 통해 실행되는 외부 API를 통합했습니다.SSL을 실행하는 Django 애플리케이션의 http : content를 허용 하시겠습니까?

이것은 외부 API를 호출 한 후 나타나는 오류입니다. [blocked] 'https://mywebsite.com'의 페이지가 HTTPS를 통해로드되었지만 'http://api.external.com/moto.json'의 안전하지 않은 콘텐츠가 실행되었습니다.이 콘텐츠는 HTTPS를 통해로드해야합니다.

필요한 외부 도메인을 어떻게 허용해야하나요? 그리고 아파치 서버에서 응용 프로그램을 실행하고 있습니다. 그래서 아파치 설정이나 Django에서이 작업을 수행해야합니다.

답변

0

이것은 불행히도 브라우저에서 수행되는 것으로 응용 프로그램이나 웹 서버에서 제어 할 수있는 것이 아닙니다. 여기

이 동작을 설명 help article from Chome입니다 : 같은 사용자 이름과 같은 민감한 정보를 요구

웹 사이트 및 암호를 자주 사용하고있는 컴퓨터에서 콘텐츠 및 를 전송하는 보안 연결을 사용 . 보안 연결을 통해 사이트를 방문하는 경우 Chrome은 웹 페이지 의 콘텐츠가 안전하게 전송되었는지 확인합니다. 안전하지 않은 채널에서 오는 특정 유형의 콘텐츠 ( )를 감지하면 자동으로 콘텐츠가로드되지 않도록하고 검색 주소창에 안전하지 않은 콘텐츠 방패 아이콘이 표시됩니다. 콘텐츠 및 블로킹을 차단하여 보안 상 차이가있을 수 있으므로 Chrome은 페이지의 정보가 잘못된 손에 떨어지지 않도록 보호합니다.

이 문제를 방지하는 유일한 방법은 HTTPS를 통해 API에 액세스하는 것입니다.

+0

빠른 답변을 보내 주신 Burhan 께 감사드립니다. 이것이 제가 웹상에서 해결책을 찾지 못한 이유 일 수 있습니다. 나는 django 패키지 https://github.com/ottoyiu/django-cors-headers로 시도하고 있지만 일부 도메인에서는 http 콘텐츠를 허용 목록에 포함하지 못했습니다. – nazareth

+0

CORS는 그렇지 않습니다. CORS가 답을 얻은 경우 API 제공 업체가 구현해야하며 사용자 측에서 구현해야합니다. –