0

iframe、オリジン、広告などで難しい問題があります。

それで、私は新しいウェブサイトmockrs.comを始めたばかりで、そこに広告を掲載して収益を上げようとしています。私の広告コードは次のようになります。

<aside id="leftAd" class="adWrapper160x600">
    <div class="ad">          
        <script language="javascript" type="text/javascript" charset="utf-8">
            cpxcenter_width = 160;    
            cpxcenter_height = 600;
        </script>
        <script language="JavaScript" type="text/javascript" src="http://ads.cpxcenter.com/cpxcenter/showAd.php?nid=4&amp;zone=22607&amp;type=banner&amp;sid=18035&amp;pid=17900&amp;subid=">
        </script>
    </div>
</aside>

このコードは広告を表示するはずですが、実際に表示されますが、それらは単なる「プレースホルダー」広告です。エラーのため、実際の広告は表示されません。クロムはこう言っています。

オリジンが「 http://ads.cpxcenter.com 」のフレームが、オリジンが「 http://mockrs.com 」のフレームにアクセスするのをブロックしました。プロトコル、ドメイン、およびポートが一致する必要があります。オリジンが「 http://mockrs.com 」のフレームが、オリジンが「 http://ads.cpxcenter.com 」のフレームにアクセスするのをブロックしました。プロトコル、ドメイン、およびポートが一致する必要があります。

Same Origin Policy に関連している可能性があると思いますが、他の外部スクリプトは問題なく実行され、私のサイトで iframe をレンダリングできるため、よくわかりません (Facebook は Like ボタンをレンダリングし、広告プロバイダーは「プレースホルダー」をレンダリングします)。 ' 広告)。

さらに、Chrome でこのようなエラーが 2 つまたは 3 つ表示されることもあれば、まったく表示されないこともあります。私はめちゃくちゃ混乱しています。

4

1 に答える 1

0

それは「SOP」の問題です。しかし、私の知る限り、この問題に直面せずに広告を実装するエレガントな方法があります。TJ Crowders のアドバイスに加えて、アド ブローカーに正しい実装を依頼することをお勧めします。

http://code.google.com/p/browsersec/wiki/Part2#Life_outside_same-origin_rules

于 2013-11-07T09:45:34.073 に答える