c1324885

На Пикабу
поставил 1323 плюса и 106 минусов
Награды:
5 лет на Пикабу
238 рейтинг 7 подписчиков 37 подписок 1 пост 0 в горячем

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс...

В продолжение темы, поднятой мной в комменте расскажу, как в битве анти-адблокеров против адблокеров победить чем-то наподобие лома.


Для особо ленивых краткий пересказ - научу как находить виновников появления рекламы (инструменты разработчика, Chrome) и использовать встроенные возможности, типа файла Hosts.


Комментариев для минусов принципиально не добавляю. Если захочется поставить минус - ставьте с наслаждением, но просьба при этом в комментарии дать обратную связь - ЗА ЧТО???  Да....  Можете ненароком что-нибудь уронить.  Предупреждение и правила гигиены в конце. 


Всё дальнейшее повествование будет применительно к браузеру Chrome. Firefox, Opera, ЯндексБраузер, Amigo (наверное) и иже с ними умеют так же, различаться будут только в названии пунктов меню.


Предлагаю вниманию сайт обычного курильщика. Баннерные блоки я выделил. Часть из них грузятся снаружи, часть с самого сайта. Задача - избавиться от внешних.

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Можно свалить всю работу на плечи разработчиков адблока, чтобы они сами всё находили, централизованно собирали информацию, обновляли списки. Но тут есть проблема - всё это счастье занимает оперативную память (chrome://memory-redirect/ сообщил, что примерно 80 мегабайт откушало расширение), добавляет задержки на этапе отрисовки страницы, ад еще и владельцы сайтов начали активно бороться и противодействовать.


Мы пойдём другим путём. Надёжный примерно как кремнёвый топор и возраст примерно такой же.


Откуда берётся реклама на страницах? На данный момент 99% её добавляется при помощи фрагментов кода на языке JavaScript, скачиваемых с серверов баннерных сетей. И вот уже есть 2 приметы - JavaScript, адрес сервера. Осталось научиться их находить и своевременно блокировать.


А помогут в этом инструменты разработчика:

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

После запуска появляется дополнительная панель, её размер можно увеличить, растянув. Самое полезное скрывается на вкладке "Network", но для получения информации надо обновить страницу после переключения на вкладку.

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Самый верх - фильтр, нас интересует вкладка "JS", хронология загрузки, перечень загружаемых файлов и статистика. К примеру тут для отображения жалкой страницы загружено 177 файлов, из которых реально полезный один - самый первый, собственно страница.

Переключились на вкладку Network , обновили (F5 / CTRL+R)  страницу, выбрали закладку JS. Еще будет полезно включить отображение доменов, то самое, на что охотимся в целях коренного изничтожения. Правый клик по заголовку таблицы и выбрать Domain , а потом еще и отсортировать всё по доменам.

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Вот он список "лишних" серверов:

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Сейчас небольшое лирическое отступление. 


У любого сервера есть 2 адреса - IP и доменное имя. Сначала браузер запрашивает у DNS сервера по доменному имени IP адрес сервера, потом соединяется с сервером по IP и запрашивает уже страницы. И в эту цепочку можно встроиться без больших повреждений.


В Windows/Linux/FreeBSD есть файл hosts, в котором можно написать - какой IP адрес соответствует доменному имени. В случае с Windows он располагается в каталоге 

C:\Windows\System32\drivers\etc\

а в случае с *nix лежит в /etc/ (меня всегда мучил вопрос - кто у кого позаимствовал :).

Если его попытаться открыть, то ... предлагаю воспользоваться блокнотом.

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts
Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Собственно далее весь алгоритм действий простой:

1. Смотрим в Chrome домены, которые прямо так говорят об их рекламном происхождении 

2. Для каждого баннерного добавляем запись в hosts:

0.0.0.0 die_banner.ru

какой адрес использовать в качестве затычки - вопрос. Можно и 0.0.0.0 и 127.0.0.1 (адрес вашего компа), но четыре нуля как-то короче. Есть мнение, что отправка на несуществующий адрес (0.0.0.0) чуть быстрее сообщает об ошибке и страница грузится быстрее.


а вот дальше в лице разработчиков блокнота, микрософт и прочих ожидает пачка граблей.

Засада 1: расширение файла. Лучше всего включить (и не выключать) отображение расширений файлов в проводнике (гугл в помощь). В диалоге сохранения надо явно указать, что собираемся работать с "все файлы":

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Засада 2: система безопасности даже администратору испортит жизнь

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

Самый простой вариант избежать этого - сохранить файл куда-нибудь, а потом скопировать проводником на место существующего и тут он уже спросит подтверждение. Второй простой вариант - изначально запустить свой любимый текстовый редактор (WORD? надеюсь нет) по правому клику "запуск от имени администратора", а потом открывать, править, грабить и прочее.

Засада 3: благодаря кэшированию, вполне возможно, что страница продолжит открывать все левые файлы, только грузить будет уже из кэша. Сбрасываем кэш, перезагружаем браузер/компьютер/переставляем windows.


Засада 4: в итоге появилось 2 файла hosts. Включите показ расширений файлов в проводнике. Что-то упустили и сохранили в .txt. Файл  hosts.txt не воспринимается системой как руководство к действию, так что ищите ошибку.


Ну и бонусом - лог ошибок загрузки всяких баннерных сетей здорового человека :)

Как избавиться от баннерной рекламы без помощи AdBlock, бесплатно, без смс... Adblock, Сисадмин, Длиннопост, Файл hosts

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. Я специально немного усложнил цепочку повествования для фильтрации уж совсем неспециалистов. Лучше на первом этапе сразу стартовать с правами администратора любимый текстовый редактор, а из него уже открывать на редактирование файл.


Ограничения технологии - 

- действует только в пределах компьютера; 

- нельзя разрешить одной странице сайта грузиться, а другой нет, только целиком;

- на мабилки по ви-фи не действует.


Но если есть домашний ви-фи роутер, то может и появиться простор для развлечений. Об этом возможно в следующей серии.

Показать полностью 10
Отличная работа, все прочитано!