ããã«ã¡ã¯åºåäºæ¥é¨ã®è³è³ï¼@func09ï¼ã§ãã
iOS9ããã®æ°æ©è½ã§ãã Content Blocking Safari Extensions
ãå©ç¨ãã¦åºåã®è¡¨ç¤ºããããã¯ããã¢ããªããªãªã¼ã¹ããã¦ããããã§ãçµæ§è©±é¡ã«ãªã£ã¦ãã¾ããã
åºåã³ã³ãã³ãããããã¯ãããã¼ã«ã¨ãããã¨ã§ãæ®åã®ä»æ¹ã«ãã£ã¦ã¯ã¡ãã£ã¢ã®åçã«å½±é¿ãä¸ããããã®ã§ããå®éã«åºåãããã«ã¼ã¢ããªãã¤ã³ã¹ãã¼ã«ãã¦ãSafariãå©ç¨ãã㨠ä¸é¨ã®åºåã¯ãããã¯ãããããã«ãªãã¾ãããç¾æç¹ã§ã¯è±èªåã®ãããã¯ã¼ã¯åºåãªã©ã¯æ¶ããããæ¥æ¬èªåã®åºåã«ã¯ã¾ã 対å¿ããã¦ããªããã¨ãå¤ãããã§ãã
åçã«ã©ã®ãããå½±é¿ãä¸ããã®ãï¼ã¨ãããã¨ã調æ»ããã«ããã¾ãã©ã®ãããã®å©ç¨è ãåºåãããã«ã¼ã使ã£ã¦ãã¦ãã©ã®ãããã®ã¤ã³ãã¬ãã·ã§ã³ã«å½±é¿ãããã®ãããå®éçã«è¨æ¸¬ãããã¨ãå¿ è¦ã ã¨èãããã®ä»çµã¿ãå°å ¥ãã¦ãã¾ãã
åºåãããã«ã¼ã®ä»çµã¿
åºåãããã«ã¼ãæ¤ç¥ããä»çµã¿ãä½ãã«ã¯ãã¾ã Content Blocking Safari Extensions
ã§ã§ãããã¨ãç解ãã¦ããå¿
è¦ãããã¾ãã
Content Blocking Safari Extensions
ã¯ä»¥ä¸ã®ãããªJSONã§å®ç¾©ããã«ã¼ã«ç¾¤ãæã¡ã¾ãã
[ { "action": { "type": "block" }, "trigger": { "url-filter": "webkit.org/images/icon-gold.png" } }, { "action": { "selector": "a[href^=\"http://nightly.webkit.org/\"]", "type": "css-display-none" }, "trigger": { "url-filter": ".*" } } ]
ã«ã¼ã«ã¯ãtrigger
㨠action
ã«åããã¦ãã¦ãã³ã³ãã³ãã trigger
ã«æå®ããã¦ããæ¡ä»¶ã«ãããããã°ãaction
ãå®è¡ãã¾ãã
trigger
㯠url-filter
ã resource-type
ãªã© URLããã¡ã¤ã«åããªã½ã¼ã¹ã®ã¿ã¤ãã§ããã¯ãããã¨ãã§ãã¾ãã
evil_ads.js
ã¨ãããã¡ã¤ã«ããã¼ãããªãããã«ããã«ã¯ä»¥ä¸ã®ããã«ãªãã¾ãã
[ { "action": { "type": "block" }, "trigger": { "url-filter": "evil_ads.js" } } ]
.evil_ads_box
ã¨ããDOMã表示ããããªããã°
[ { "action": { "type": "css-display-none", "selector": ".evil_ads_box" }, "trigger": { "url-filter": ".*" } } ]
ãããªæãã«ãªãã¾ãã
å®éã®ã³ã¼ã㯠OSSã«ãªã£ã¦ãã BlockParty ã®å®è£ ãåèã«ãªãã¾ãã
åºåãããã«ã¼æ¤ç¥ã®æ¹æ³
åºåãããã«ã¼ãæ¤ç¥ããããã«ã¯ãä¸è¨ã®ãããªæåã®ã©ããã²ã¨ã¤ãæ¤ç¥ã§ããã°è¯ãã®ã§ãä¸çªç°¡åãªãç¹å®ã®è¦ç´ ãé表示ã«ãããæåãæ¤ç¥ããããã«ãã¦ãã¾ãã
OSSã§ã¯ BlockAdBlock ã¨ããPCãã©ã¦ã¶ç¨ã®åºåãããã«ã¼ã¢ããªã³ãå«ãã¦æ¤ç¥ã§ãã便å©ãªã©ã¤ãã©ãªããã£ãã®ã§ãããããåç´ãªå®è£ ã«ããããã«åèããã«ã¨ã©ãã¾ããã
<div id='ad_blocker_bait' class = 'pub_300x250 pub_300x250m pub_728x90 text-ad textAd text_ad text_ads text-ads text-ad-links'></div> <script type='text/javascript'> function checkBait(){ var bait = $('#ad_blocker_bait'); return bait.css('display') === 'none' || bait.css('visibility') === 'hidden'; } setTimeout(function(){ if(checkBait()) { // åºåãããã«ã¼ãæå¹ã«ãªã£ã¦ãã } else { // åºåãããã«ã¼ãæå¹ã«ãªã£ã¦ããªã } }, 1000); </script>
é常ã«ç°¡åãªã¹ã¯ãªããã§ãããé¤ã¨ãªãã»ã¬ã¯ã¿ã¼ãæã£ã空ã®è¦ç´ ãä½ã£ã¦ããã1ç§å¾ã«æ¶ãã¦ããªãããã§ãã¯ããã ãã§ãã
æ¤ç¥ãã¸ãã¯ã«ã¤ãã¦
ãã®ãã¸ãã¯ã¯ããã®è¨äºãæ¸ãã¦ãã2015å¹´9æ28æ¥ã®æç¹ã§ã主è¦ãªåºåãããã«ã¼ã¢ããªã«å¯¾ãã¦æå¹ã§ããã¨ã¯èãã¦ãã¾ãããä»å¾ãæå¹ã§ãããã¯ä¿è¨¼ãããã¾ãã
é常ã«ç°¡åãªãã®ãªã®ã§ãåºåãããã«ã¼ã®ç²¾åº¦ã«åããã¦æ¹å¤ãã¦ããå¿ è¦ãããã¨æãã¾ãã
è¨æ¸¬ã«ã¤ãã¦
è¨æ¸¬ãã¹ããå¦ãã¨ããç¹ã«ã¤ãã¦ã¯ãä»®ã«ä»ç¤¾ã®å©ç¨çãªã©ãå ¬è¡¨ãããã¨ãã¦ããã¡ãã£ã¢ã«ãã£ã¦ã¦ã¼ã¶ã¼ç¹æ§ã¯å¤ãããããå½ç¶ã¤ã³ã¹ãã¼ã«ãã¦ããã¢ããªãéãã¯ããªã®ã§ããã¡ãã¨èªç¤¾ã§è¨æ¸¬ãã¦ããã®ãè¯ãã¨èãã¦ãã¾ãã
ä½ãã©ã®ããã測ãã¹ããï¼ãã¡ãã£ã¢æ¬¡ç¬¬ãªã®ã§ãããåºåè¦ç¹ã§èãã¦å¨åº«ã«å¯¾ãã¦ã©ã®ãããã®å²åãåºåãããã¯ããããã®ãªã®ãï¼ããã«ããåçã¸ã®å½±é¿ã¯ããããªã®ãï¼ã¨ãããã¨ããããããã«ãç¹å®ã®ãã¼ã¸ã«ããã¦ãµã³ããªã³ã°ããä¸ã§å©ç¨ã»éå©ç¨ã®æ°ãã¨ã£ã¦ãã¾ãã
ã¾ã¨ã
ä»åã¯ãContent Blocking Safari Extensions
ãå©ç¨ããåºåãããã«ã¼ã«ã¤ãã¦ã¨ãã®æ¤ç¥ã®ä»æ¹ã«ã¤ãã¦æ¸ãã¦ã¿ã¾ããã対å¿ã®ä»æ¹ã¯ã¡ãã£ã¢ã«ãã£ã¦æ§ã
ã§ã¯ããã¾ãããå®æ§çãªè©±é¡ãå¨å²ã®å¯¾å¿ã«æµãããå·éãªå¤æãããããã«ãã¾ãã¯è¨æ¸¬ããã¦ãåçã¤ã³ãã¯ããæ¨æ¸¬ãã¦ã¿ãã¨ããã®ã§ã¯ãªãã§ããããã
æå¾ã«ãåºåäºæ¥é¨ã§ã¯ã¡ã³ãã¼ã大åéãã¦ããã¾ããã¨ãããã話ã ãã§ãã»ã»ã¨ããæ¹ã§ãè¯ãã®ã§æ¯éæ°è»½ã«ãé£çµ¡ãã ããï¼