今回は、httpが乗っ取られフローティング広告に対処する方法と、httpが乗っ取られ、フローティング広告に対処する際の注意事項を紹介します。実際のケースを見てみましょう。
最近、Web サイトの右下隅にフローティング広告が頻繁に表示されることに気付きました。最初は単なるブラウザの広告だと思いました。 その後、自宅の別のブラウザに広告が表示されると報告する同僚が増えました。その後、詳しく調べてみたところ、Web サイトが乗っ取られていることがわかりました。 その後、百度は http ハイジャック、DNS ハイジャック、オペレーター ハイジャックなどの情報をたくさん検索し、私は騙されたと確信しました。 本当に控えめな表現ですが、広告コードが挿入されています。なんと悪徳実業家だ、彼は何でもできる。
しかし、最も重要な解決策は何でしょうか?その後、問題は運用および保守の同僚に投げかけられました。 結局のところ、解決策はないということになります。はい、それはとても詐欺です。 https を使用しない限り。電話をかけたり、ネットで苦情を送ったりするのは無駄のようです。もしかしたら運営やメンテナンスが悪すぎるのかもしれません。とにかく、結果は何もありません。 それでは、私たちにできることは何もありませんでした。フロントエンドでブロックする方法しか見つかりません。それからハイジャックコードを研究する旅が始まりました ...このプロセスでは、800 語の検索プロセスが省略されます。 最後に、ハイジャックされた広告は、ハイジャックされた広告に関する情報を格納する js グローバル変数 _pushshowjs_ を定義し、広告を配置するために _embed_v3_dc の ID を持つ p を作成することが判明しました。そしてそれは毎回同じであり、変化はありません。 ハイジャック広告の配信原則に従い、最終的にはjsを利用してハイジャック広告をブロックする方法が採用されました。具体的なコードは次のとおりです:
;(function($,window,undefined){ var needClear=false, timeout; if(window._pushshowjs_){ console.log("adHttp"); needClear=true; } window._pushshowjs_={}; Object.freeze(window._pushshowjs_);//让对象只读, 防止属性被直接修改 Object.defineProperty(window, '_pushshowjs_', { configurable: false,//防止属性被重新定义 writable: false//防止属性被重新赋值 }); if(needClear){ timeout=setInterval(function(){ if($("#_embed_v3_dc").length>0){ $("#_embed_v3_dc").remove(); console.log("http清除"); needClear=false; clearInterval(timeout); } },500); $(window).load(function(){ if(needClear){ setTimeout(function(){ clearInterval(timeout); console.log("清除"); },2000); } }); } }(jQuery,window));
データ検証とチェックボックス フォーム送信を実装するための JS
以上がhttp ハイジャックされたフローティング広告に対処する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。