your programing

Google Adsense의 자바 스크립트 오류

lovepro 2020. 10. 10. 10:45
반응형

Google Adsense의 자바 스크립트 오류


여러 애드 센스 실행 사이트에서 다음과 같은 오류가 발생했습니다.

[ http : //] googleads.g.doubleclick.net에 메시지를 게시 할 수 없습니다 . 수신자의 출처는 http://www.anekdotz.com 입니다.

URL이 [ http : //] googleads.g.doubleclick.net/pagead/ads?client=ca-pub-9099580055602120&output= 인 프레임에서 URL [ http : //] www.anekdotz.com/을 사용 하여 프레임 에 액세스하려는 안전하지 않은 JavaScript 시도 html & h = 250 & slotname = 9210181593 & w = 300 & flash = 10.0.42 & url = http % 3A % 2F % 2Fwww.anekdotz.com % 2F & dt = 1269901036429 & correlator = 1269901036438 & frm = 0 & ga_vid = 711000587.1269901037 & ga_240_w & java_tz = 900 & ga_fc = 0 & java_tz = 900 u_aw = 1436 & u_cd = 24 u_nplug = 10 u_nmime가 = 1440 & u_ah = 878 & 101 BIW = 1365 & BIH = 806 이드 = 44,901,212 및 푸 = 0 IFI 1 및 DTD = 153 XPC = Xkfk1oufPQ 및 p = HTTP % 3A // www.anekdotz.com = . 도메인, 프로토콜 및 포트가 일치해야합니다.

(Chrome 자바 스크립트 콘솔에서)

광고가 제대로 표시되고 기본 자바 스크립트 코드에 영향을주지 않습니다. 그러나 때로는 이러한 오류가 페이지 로딩 속도를 늦추는 것처럼 보입니다. 이 문제를 어떻게 해결할 수 있습니까?

(저는 신규 사용자이므로 게시 할 수 있도록 URL을 수정했습니다.)


Google은 스크립트를 엉망으로 만들었습니다. 그것에 대해 할 수있는 일이별로 없습니다.

어떤 이유로 http://pagead2.googlesyndication.net/pagead/expansion_embed.js애드 센스 스크립트에 의해 상위 페이지에 포함 된은 ( <iframe>는) 새로운 HTML5 postMessage 기능을 사용하여 광고를 보관하기 위해 새로 작성된 광고에 대한 정보를 보내려고합니다 .

            ha(this, function (f, e) {
                d[Pa](this.a[A]+"|"+f+":"+e, this.la)
            });

네. 멋진 축소 / 난독 화 된 코드가 있습니다. 신뢰 나, Pa이다 'postMessage'!

targetOrigin이 호출 인수 this.la는로 설정됩니다 http://googleads.g.doubleclick.net. 그러나 새 iframe이는 그것으로 작성되었습니다 src로 설정 about:blank. 대상 원본과 일치하지 않으므로 브라우저는 메시지 전송을 거부해야합니다. Chrome만이 콘솔 로그에 실제 윙윙 거리는 소리를내는 것 같습니다.

왜이 작업을 수행하는지 전혀 모르겠습니다. 왜 '*'대상 출처로 사용하지 않는지 신경 쓰지 마세요 . 난독 화 된 스크립트에 들어가서 알아 내고 싶지 않습니다. 그러나이 오류로 인해 페이지로드 속도가 느려지지는 않습니다. 일시 중지가 표시되는 경우 일반적으로 다른 외부 스크립트를 해결하고 가져 오는 중입니다.


Google은 URL이 about : blank 인 창에 대해 동일한 출처 정책을 무시하는 브라우저 특성을 악용하여 해당 창에서 XMLHttpRequest를 제출하거나이 경우 모든 사이트에 postMessage 요청을 제출할 수 있도록합니다.

내가 아는 한, 브라우저는 최근이 동작을 비활성화했습니다. 패치 된 브라우저가 하나 있어야합니다.

이 고장난 기능이 광고로 수익을 올리는 데 영향을주지 않기를 바랍니다.

귀하의 사이트가 귀하의 잘못없이 Javascript 오류를 생성하는 것은 성가신 일이지만 귀하의 페이지에서 다른 사람의 Javascript를 실행할 때 반드시 수락해야 할 가능성이 있습니다.


브라우저가 다른 웹 사이트의 CSRF 공격을 차단하기 때문에 이는 정상입니다.

googleads...웹 사이트에 액세스하고이 문제를 해결 하려면 crossdomain.xml루트에 이름이 지정된 파일을 만들고 다음 내용으로 채우십시오.

<?xml version="1.0"?>
<!DOCTYPE cross-domain-policy 
  SYSTEM "http://www.macromedia.com/xml/dtds/cross-domain-policy.dtd">
<cross-domain-policy>
  <allow-access-from domain="googleads.g.doubleclick.net" />
</cross-domain-policy>

테스트하려면 http://your-domain.com/crossdomain.xml 도메인으로 이동하여 해당 페이지에 오류가 없는지 확인합니다. 또한 와일드 카드 등을 사용할 수 있습니다 (참조 참조). 완료되면 페이지를 새로 고칩니다. 도움이 되었기를 바랍니다.

라이브 예 : http://www.blanjamudah.com/crossdomain.xml

참조 : http://en.wikipedia.org/wiki/Cross-site_request_forgery http://curtismorley.com/2007/09/01/flash-flex-tutorial-how-to-create-a-crossdomainxml-file/


googleads.g.doubleclick.net에 대한 액세스를 허용하는 사이트 루트의 crossdomain.xml 파일이 문제를 해결해야합니다.

http://www.warriorforum.com/adsense-ppc-seo-discussion-forum/458906-adsense-blank-space-problem.html 페이지를 참조하십시오.


도메인 및 프로토콜 오류 코드를 검색 한 후이 페이지를 방문하는 경우 :

애드 센스는 이전 소스 코드를 사용할 때 생성되는 교차 도메인 오류를 해결하는 자바 스크립트 의 새로운 비동기 버전출시했습니다 . AJAX가 많은 사이트에서 표준 임베드 코드를 사용했을 때 도메인 간 오류가 발생했습니다. 비동기 코드를 구현하고 적절하게 정의 된 crossdomain.xml과 함께 도메인 간 오류가 사라졌습니다.


이것은 실제 원인을 마스킹하는 오류 메시지의 경우 인 것 같습니다. 실제 원인은 아마도 일종의 애드 센스 구성 오류 일 것입니다. 안타깝게도 애드 센스는 더 관련성 높은 오류 메시지를 제공하기 위해 충분한 검사를 수행하지 않는 것 같습니다.

나도이 오류가 있었고 포럼을 조사한 후이 결론에 도달했는데, 일부 사람들은 은행 계좌 등을 확인한 후 수정되었다고보고했습니다. 제 경우에는 서버 측 환경이 google_ad_client 매개 변수를 엉망으로 만들었 기 때문에 실제 문제는 해당 매개 변수가 null이라는 것입니다. 이 문제를 해결하면 광고가 표시되고 더 이상 오류 메시지가 표시되지 않습니다.

따라서 실제로는 동일 출처 정책과 관련이 없습니다. 이제 애드 센스 코드가 정확하므로 이제는 서버뿐만 아니라 localhost에서 실행할 때도 광고를 표시 할 수 있습니다.


비슷한 문제가 생겼습니다. 관련이 있는지 확실하지 않지만 어쨌든 설명하겠습니다.

내 페이지에 두 개의 광고가 게재되었고 페이지 끝에서이 스크립트를 한 번만 호출하여 코드를 "리팩터링"하고 싶었습니다.

<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

내 광고가 깨져서이 스크립트 태그를 각 광고 var 스크립트 바로 뒤에 배치해야한다는 것을 알았습니다.

<script type="text/javascript"><!--
google_ad_client = "ca-pub-872346872364872364";
google_ad_slot = "719238712983";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>

그러나 변경 사항을 되 돌렸을 때 첫 번째 스크립트 태그는 여전히 내 페이지 하단에 배치되어 내 스크립트 태그 중 다른 하나를 광고로로드하려고했습니다. 이것은 실패했고 당신이 본 오류가 발생했습니다.

따라서 두 개의 광고 스크립트 태그를 서로 뒤에 유지하고 다른 위치는 사용하지 않는지 확인하십시오. 예 :

<script type="text/javascript"><!--
google_ad_client = "ca-pub-872346872364872364";
google_ad_slot = "719238712983";
google_ad_width = 728;
google_ad_height = 90;
//-->
</script>
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>아래가 아닌 광고 위의 페이지 상단으로 이동 하여이 문제를 해결했습니다.


In the Sites tab in your Google Adsense dashboard (web or app version). Make sure your site is setup with your-domain.com (or whichever tld) as the domain and www.your-domain.com as a subdomain.

참고URL : https://stackoverflow.com/questions/2541797/javascript-errors-from-google-adsense

반응형