Когда в очередной раз переадресовываешься на страницу от провайдера с предупреждением о том, что доступ к запрашиваемому сайту заблокирован, и приходится вручную вытаскивать URL сайта, задумываешься об автоматизации этой рутинной деятельности.
![image](https://habrastorage.org/r/w780q1/getpro/habr/post_images/bbd/6f8/7ad/bbd6f87ad045983807a22cb65607cdc7.jpg)
В моём частном случае речь пойдёт о блокировке от «Билайна». Чтобы избавится от её назойливости, нам понадобится веб-сервер. Подойдёт установленный на локальной машине.
«Билайн» перекидывает нас на страницу blackhole.beeline.ru/?url=...., где в переменной url в закодированном urlencode виде содержится наш адрес. Копировать и декодировать его каждый раз руками достаточно скучное дело, поэтому мы попробуем использовать нашу эволюционную особенность — мозг.
Для начала надо найти файл hosts.
В Windows он распологается в %SystemRoot%\system32\drivers\etc\hosts, в unix-like ОС в /etc/hosts.
В этом файле прописываются соответствия между доменами и IP адресами.
Добавляем туда строку: 127.0.0.1 blackhole.beeline.ru
В качестве IP надо указать IP любого сервера, который сможет заменить нам страничку, выдаваемую провайдером.
В index.php на этом сервере добавим такой код:
Этот код срабатывает, если передаётся параметр url методом get, и не мешает работе существующего сайта.
В переменной $webProxy указан адрес рабочего веб прокси.
Итог: при переадресации провайдером на страницу предупреждения мы переадресовываемся на свою страничку, которая выводит нам URL сайта и предлагает открыть его через веб прокси. Мелочь, но сильно упрощает процесс сёрфинга.
UPD:
Кстати, может быть кто-нибудь поставит этот скрипт к себе на нелокальный сервер, и даст IP широкой общественности?
![image](https://habrastorage.org/getpro/habr/post_images/bbd/6f8/7ad/bbd6f87ad045983807a22cb65607cdc7.jpg)
В моём частном случае речь пойдёт о блокировке от «Билайна». Чтобы избавится от её назойливости, нам понадобится веб-сервер. Подойдёт установленный на локальной машине.
«Билайн» перекидывает нас на страницу blackhole.beeline.ru/?url=...., где в переменной url в закодированном urlencode виде содержится наш адрес. Копировать и декодировать его каждый раз руками достаточно скучное дело, поэтому мы попробуем использовать нашу эволюционную особенность — мозг.
Для начала надо найти файл hosts.
В Windows он распологается в %SystemRoot%\system32\drivers\etc\hosts, в unix-like ОС в /etc/hosts.
В этом файле прописываются соответствия между доменами и IP адресами.
Добавляем туда строку: 127.0.0.1 blackhole.beeline.ru
В качестве IP надо указать IP любого сервера, который сможет заменить нам страничку, выдаваемую провайдером.
В index.php на этом сервере добавим такой код:
<?php
if ($_GET['url']!=''){
$webProxy="http://www.webproxy.net/view?q=";
print '<html><head><title>Ола-ла! Блокировочка)</title><meta http-equiv="content-type" content="text/html; charset=utf-8" /></head><body>';
print 'Ола-ла! Блокировочка)<br>';
print $_GET['url'] . '<br>';
print '<a href="'. $webProxy . urldecode($_GET['url']) . '">открыть в web proxy</a>';
print "</body></html>";
exit;
}
?>
Этот код срабатывает, если передаётся параметр url методом get, и не мешает работе существующего сайта.
В переменной $webProxy указан адрес рабочего веб прокси.
Итог: при переадресации провайдером на страницу предупреждения мы переадресовываемся на свою страничку, которая выводит нам URL сайта и предлагает открыть его через веб прокси. Мелочь, но сильно упрощает процесс сёрфинга.
UPD:
Кстати, может быть кто-нибудь поставит этот скрипт к себе на нелокальный сервер, и даст IP широкой общественности?