Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс...
В продолжение темы, поднятой мной в комменте расскажу, как в битве анти-адблокеров против адблокеров победить чем-то наподобие лома.
Для особо ленивых краткий пересказ - научу как находить виновников появления рекламы (инструменты разработчика, Chrome) и использовать встроенные возможности, типа файла Hosts.
Комментариев для минусов принципиально не добавляю. Если захочется поставить минус - ставьте с наслаждением, но просьба при этом в комментарии дать обратную связь - ЗА ЧТО??? Да.... Можете ненароком что-нибудь уронить. Предупреждение и правила гигиены в конце.
Всё дальнейшее повествование будет применительно к браузеру Chrome. Firefox, Opera, ЯндексБраузер, Amigo (наверное) и иже с ними умеют так же, различаться будут только в названии пунктов меню.
Предлагаю вниманию сайт обычного курильщика. Баннерные блоки я выделил. Часть из них грузятся снаружи, часть с самого сайта. Задача - избавиться от внешних.
Можно свалить всю работу на плечи разработчиков адблока, чтобы они сами всё находили, централизованно собирали информацию, обновляли списки. Но тут есть проблема - всё это счастье занимает оперативную память (chrome://memory-redirect/ сообщил, что примерно 80 мегабайт откушало расширение), добавляет задержки на этапе отрисовки страницы, ад еще и владельцы сайтов начали активно бороться и противодействовать.
Мы пойдём другим путём. Надёжный примерно как кремнёвый топор и возраст примерно такой же.
Откуда берётся реклама на страницах? На данный момент 99% её добавляется при помощи фрагментов кода на языке JavaScript, скачиваемых с серверов баннерных сетей. И вот уже есть 2 приметы - JavaScript, адрес сервера. Осталось научиться их находить и своевременно блокировать.
А помогут в этом инструменты разработчика:
После запуска появляется дополнительная панель, её размер можно увеличить, растянув. Самое полезное скрывается на вкладке "Network", но для получения информации надо обновить страницу после переключения на вкладку.
Самый верх - фильтр, нас интересует вкладка "JS", хронология загрузки, перечень загружаемых файлов и статистика. К примеру тут для отображения жалкой страницы загружено 177 файлов, из которых реально полезный один - самый первый, собственно страница.
Переключились на вкладку Network , обновили (F5 / CTRL+R) страницу, выбрали закладку JS. Еще будет полезно включить отображение доменов, то самое, на что охотимся в целях коренного изничтожения. Правый клик по заголовку таблицы и выбрать Domain , а потом еще и отсортировать всё по доменам.
Вот он список "лишних" серверов:
Сейчас небольшое лирическое отступление.
У любого сервера есть 2 адреса - IP и доменное имя. Сначала браузер запрашивает у DNS сервера по доменному имени IP адрес сервера, потом соединяется с сервером по IP и запрашивает уже страницы. И в эту цепочку можно встроиться без больших повреждений.
В Windows/Linux/FreeBSD есть файл hosts, в котором можно написать - какой IP адрес соответствует доменному имени. В случае с Windows он располагается в каталоге
C:\Windows\System32\drivers\etc\
а в случае с *nix лежит в /etc/ (меня всегда мучил вопрос - кто у кого позаимствовал :).
Если его попытаться открыть, то ... предлагаю воспользоваться блокнотом.
Собственно далее весь алгоритм действий простой:
1. Смотрим в Chrome домены, которые прямо так говорят об их рекламном происхождении
2. Для каждого баннерного добавляем запись в hosts:
0.0.0.0 die_banner.ru
какой адрес использовать в качестве затычки - вопрос. Можно и 0.0.0.0 и 127.0.0.1 (адрес вашего компа), но четыре нуля как-то короче. Есть мнение, что отправка на несуществующий адрес (0.0.0.0) чуть быстрее сообщает об ошибке и страница грузится быстрее.
а вот дальше в лице разработчиков блокнота, микрософт и прочих ожидает пачка граблей.
Засада 1: расширение файла. Лучше всего включить (и не выключать) отображение расширений файлов в проводнике (гугл в помощь). В диалоге сохранения надо явно указать, что собираемся работать с "все файлы":
Засада 2: система безопасности даже администратору испортит жизнь
Самый простой вариант избежать этого - сохранить файл куда-нибудь, а потом скопировать проводником на место существующего и тут он уже спросит подтверждение. Второй простой вариант - изначально запустить свой любимый текстовый редактор (WORD? надеюсь нет) по правому клику "запуск от имени администратора", а потом открывать, править, грабить и прочее.
Засада 3: благодаря кэшированию, вполне возможно, что страница продолжит открывать все левые файлы, только грузить будет уже из кэша. Сбрасываем кэш, перезагружаем браузер/компьютер/переставляем windows.
Засада 4: в итоге появилось 2 файла hosts. Включите показ расширений файлов в проводнике. Что-то упустили и сохранили в .txt. Файл hosts.txt не воспринимается системой как руководство к действию, так что ищите ошибку.
Ну и бонусом - лог ошибок загрузки всяких баннерных сетей здорового человека :)
DISCLAIMER: неразумная правка этого файла может перекрыть Вам доступ на любой сайт интернета!!!
Рекомендации по выживанию -
1. Первые строки про localhost остаются нетронутыми, пишем после них!
2. Домен самого сайта не трогаем - кроме рекламы на нём есть куча полезных страниц. Кстати, ( вредный совет! ) хороший метод повысить производительность своего труда - добавить строки
0.0.0.0 vk.com
0.0.0.0 pikabu.ru
3. Домены, связанные с яндексом, гуглом (gstatic.com тоже их), всякими mail.ru и CDN серверами - добавляем с осторожностью. Есть шанс потерять доступ к чему-то полезному. Один раз связанное с mail.ru наудалял так, что сам сайт пускал, а приложить файл к письму уже не получилось :)
4. Если что-то поломалось, всегда можно закомментировать подозрительную строку символом "#"
5. Я специально немного усложнил цепочку повествования для фильтрации уж совсем неспециалистов. Лучше на первом этапе сразу стартовать с правами администратора любимый текстовый редактор, а из него уже открывать на редактирование файл.
Ограничения технологии -
- действует только в пределах компьютера;
- нельзя разрешить одной странице сайта грузиться, а другой нет, только целиком;
- на мабилки по ви-фи не действует.
Но если есть домашний ви-фи роутер, то может и появиться простор для развлечений. Об этом возможно в следующей серии.