it-swarm-ko.tech

왜 갑자기 Firefox에서 "블로킹 된 혼합 액티브 콘텐츠"문제가 발생합니까?

오늘 아침, 파이어 폭스 브라우저를 최신 버전 (22 ~ 23)으로 업그레이드 할 때, 나의 백 오피스 (웹 사이트)의 주요 측면 중 일부가 작동을 멈췄습니다.

Firebug 로그를 보면 다음과 같은 오류가보고되었습니다.

Blocked loading mixed active content "http://code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css"
Blocked loading mixed active content "http://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"`

위의 두 가지 중 후자가로드되지 않은 다른 오류가 발생했습니다.

위의 의미는 무엇이며 어떻게 해결합니까?

329
Appulus

이 블로그 게시물 을 발견하여 몇 가지 사항을 정리했습니다. 가장 관련있는 비트를 인용하려면 :

Firefox 23에서는 기본적으로 혼합 활성 컨텐츠가 차단됩니다!

혼합 내용이란 무엇입니까?
사용자가 HTTP를 통해 제공되는 페이지를 방문하면 도청 및 MITM (man-in-the-middle) 공격을 위해 연결이 열립니다. 사용자가 HTTPS를 통해 제공되는 페이지를 방문하면 웹 서버와의 연결이 SSL로 인증 및 암호화되므로 도청 자와 MITM 공격으로부터 보호됩니다.

그러나 HTTPS 페이지에 HTTP 컨텐츠가 포함 된 경우 기본 페이지가 HTTPS를 통해 제공 되더라도 공격자가 HTTP 부분을 읽거나 수정할 수 있습니다. HTTPS 페이지에 HTTP 컨텐츠가 있으면 해당 컨텐츠를 "혼합"이라고합니다. 일부 콘텐츠는 HTTP를 통해 암호화되지 않은 상태로 검색되므로 사용자가 방문하는 웹 페이지는 부분적으로 만 암호화됩니다. 혼합 컨텐츠 차단기는 HTTPS 페이지에서 특정 HTTP 요청을 차단합니다.

필자의 경우 해결 방법은 단순히 jquery 포함이 다음과 같은지 확인하는 것입니다 (프로토콜 제거 참고).

<link rel="stylesheet" href="//code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css" type="text/css">
<script type="text/javascript" src="//ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"></script>

임시 '수정'은 주소 표시 줄의 왼쪽 상단에있는 '차폐'아이콘을 클릭하고 '이 페이지에서 보호 비활성화'를 선택하는 것입니다. not ​​명백한 이유로 권장됩니다.

업데이트 : Firefox (Mozilla) 지원 페이지의 This link 는 혼합 컨텐츠를 구성하는 내용을 설명하는 데 유용하며 위 단락에서 주어진 것처럼 실제로 페이지를 표시하는 방법에 대한 세부 정보를 제공합니다.

대부분의 웹 사이트는 사용자의 조치없이 계속 정상적으로 작동합니다.

혼합 컨텐츠를 표시해야하는 경우 다음과 같이 쉽게 수행 할 수 있습니다.

주소 표시 줄에서 방패 아이콘 Mixed Content Shield를 클릭하고 드롭 다운 메뉴에서이 페이지에서 보호 비활성화를 선택하십시오.

검색 주소창의 아이콘이 주황색 경고 삼각형 경고 ID 아이콘으로 바뀌어 안전하지 않은 콘텐츠가 표시되고 있음을 알려줍니다.

이전 작업을 되돌리려면 (혼합 내용 다시 차단) 페이지를 다시로드하십시오.

401
Appulus

Https에서 http를 호출하고 있음을 의미합니다. 스크립트 태그에서 src="//url.to/script.js"를 사용할 수 있으며 자동 감지됩니다.

또는 http 페이지에 게시하더라도 src에서 https를 사용할 수 있습니다. 이렇게하면 의견에 언급 된 잠재적 인 문제를 피할 수 있습니다.

126

화이트리스트 기능이 없으면 "모두"또는 "아무것도"선택하지 않아야합니다. 혼합 콘텐츠 차단을 완전히 비활성화 할 수 있습니다.


아무것도 선택하지 마십시오

현재 활성 프로파일에 대해 혼합 컨텐츠 차단을 영구적으로 비활성화해야합니다.

"굉장한 바 (Awesome Bar)"에서 "about : config"를 입력하십시오. 이것이 처음이라면 "이것은 무효가 될 수 있습니다!" 메시지.

네, 조심하겠습니다. 예, 약속드립니다!

security.mixed_content.block_active_content 를 찾습니다. 이 값을 false 로 설정하십시오.


모든 선택

iDevelApp 의 대답은 대단합니다.

50
DRaehal

혼합 콘텐츠 요청을 허용하려면<head>tag에 below 태그를 추가하십시오.

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">

차단하려는 경우 아래 태그를<head>태그에 추가하십시오.

<meta http-equiv="Content-Security-Policy" content="block-all-mixed-content">
21
tapas talukder

AJAX를 통해 내부 서비스를 사용하는 경우 url이 https를 가리키는 지 확인하십시오. 그러면 오류가 해결됩니다.

초기 AJAX URL : " http://XXXXXX.com/Core.svc/ "+ ApiName
수정 됨 AJAX URL : " https://XXXXXX.com/Core.svc/ "+ ApiName,

10
Bryan Cote-Chang

그것 때문에 보안 오류가 발생했습니다. 웹 사이트 URL에서 "http"가 아닌 "https"를 사용하십시오.

예 :

   "https://code.jquery.com/ui/1.8.10/themes/smoothness/jquery-ui.css"
   "https://ajax.aspnetcdn.com/ajax/jquery.ui/1.8.10/jquery-ui.min.js"
9
Amit Naraniwal

액세스 할 수없는 혼합 된 컨텐츠 https를 http 호출로 만드는 관련 페이지에서 관련 항목에 다음 항목을 추가하고 혼합 컨텐츠 오류를 제거 할 수 있습니다.

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
6
sramay

CSS 템플릿을 구입하고 http://whatever.js.com/javascript.js를 통해 javascript 외부 자바 스크립트 파일을 가져 와서 이와 동일한 문제가 발생했습니다. 내 브라우저에서 해당 페이지로 가서 SSL을 사용하여 https://whatever...로 변경 했으므로 HTML 자바 스크립트 태그에서 https 대신 http을 사용하도록 URL을 변경했습니다.

4
Edmund

Https 프로토콜에서 강제로 리디렉션하려면이 디렉티브를 루트 폴더의 .htaccess에 추가하십시오

RewriteEngine on

RewriteCond %{REQUEST_SCHEME} =http

RewriteRule (.*) https://%{HTTP_Host}%{REQUEST_URI} [R=301,L]
4
Massimiliano

내 사이트가 http에서 https로 바뀌면 같은 문제에 직면 해 있습니다. http를 https로 리디렉션하려는 모든 요청에 ​​대해 규칙을 추가했습니다.

사이트 간 요청에 대해 리디렉션 규칙을 추가해야하지만 외부 js/css에 대한 리디렉션 규칙을 제거해야합니다.

2
tapas talukder

@Blender Comment가 최선의 방법입니다. http에서 https으로 이동하면 변경하기가 어려울 수 있으므로 코드의 아무 곳에서나 프로토콜을 절대 하드 코딩하지 마십시오. 모든 파일을 수동으로 편집하고 업데이트해야하기 때문에.

이것은 자동으로 프로토콜을 감지하므로 항상 좋습니다.

src="//code.jquery.com
2
Krishnadas PC

http : //www.example.com과 같이 페이지를 포함 시키거나 섞는 데 문제가있는 경우 // www. example.com을 입력하여 문제를 해결할 수 있습니다. 대신에

1
irene salomo