Может быть немного с опозданием, но напишу о том, как в 1 апреля можно пошутить над своими пользователями Интернета в офисе.
Перевернём их мир с ног на голову!
За основу взял идею и скрипт отсюда.
Прикручиваем всё что нужно (mogrify содержится в пакете imagemagick):
aptitude update && aptitude install imagemagick
Затем нужно создать каталог для картинок там, откуда их сможет выдавать доступный для локальной сети веб-сервер, например:
mkdir -p /var/www/html/a1
Создадим скрипт перезаписи ссылок и немного подправим его:
touch /usr/local/bin/flip-image.pl
vim /usr/local/bin/flip-image.pl
Скрипт почти без изменений с вышеуказанного сайта, лишь подправил пути и добавил chmod для файла картинки, потому что в Debian скрипт выполняется от имени пользователя proxy и файл обрабатывается с правами 640.
Веб-сервер работает от пользователя www-data и просто так не может получить доступ к этим файлам без изменения прав доступа.
Наверное можно было бы оптимизировать скрипт, но я не силён в Perl и регулярных выражениях, да и на пол-дня веселья ИМХО этого достаточно!
#!/usr/bin/perl
$|=1;
$count = 0;
$pid = $$;
while (<>) {
chomp $_;
if ($_ =~ /(.*\.jpg)/i) {
$url = $1;
system("/usr/bin/wget", "-q", "-O","/var/www/html/a1/$pid-$count.jpg", "$url");
system("/usr/bin/mogrify", "-flip","/var/www/html/a1/$pid-$count.jpg");
system("chmod", "644","/var/www/html/a1/$pid-$count.jpg");
print "http://internet.lan/a1/$pid-$count.jpg\n";
}
if ($_ =~ /(.*\.jpeg)/i) {
$url = $1;
#system("logger","flip-image","$url");
system("/usr/bin/wget", "-q", "-O","/var/www/html/a1/$pid-$count.jpeg", "$url");
system("/usr/bin/mogrify", "-flip","/var/www/html/a1/$pid-$count.jpeg");
system("chmod", "644","/var/www/html/a1/$pid-$count.jpeg");
print "http://internet.lan/a1/$pid-$count.jpeg\n";
}
elsif ($_ =~ /(.*\.gif)/i) {
$url = $1;
system("/usr/bin/wget", "-q", "-O","/var/www/html/a1/$pid-$count.gif", "$url");
system("/usr/bin/mogrify", "-flip","/var/www/html/a1/$pid-$count.gif");
system("chmod", "644","/var/www/html/a1/$pid-$count.gif");
print "http://internet.lan/a1/$pid-$count.gif\n";
}
elsif ($_ =~ /(.*\.png)/i) {
$url = $1;
system("/usr/bin/wget", "-q", "-O","/var/www/html/a1/$pid-$count.png", "$url");
system("/usr/bin/mogrify", "-flip","/var/www/html/a1/$pid-$count.png");
system("chmod", "644","/var/www/html/a1/$pid-$count.png");
print "http://internet.lan/a1/$pid-$count.png\n";
}
else {
print "$_\n";;
}
$count++;
}
Не забываем выставить chmod a+x для файла со скриптом!
Теперь пора настроить наш прокси-сервер на использование скрипта перезаписи ссылок.
У меня установлен Squid 2.7, в его конфиге нужно добавить следующее:
url_rewrite_program /usr/local/bin/flip-image.pl
url_rewrite_children 20
И попросить squid перечитать конфиг:
/etc/init.d/squid reload
Опцию url_rewrite_children (максимальное количество одновременно работающих обработчиков) можно изменить под свои условия, исходя из оборудования сервера и количества клиентов. У меня на роутере стоит AMD Sempron с частотой 1800 МГц, и за несколько часов LA не поднимался больше 0.9.
Вот, в принципе, и всё!
Сейчас все наблюдают нечто похожее на это:
P.S. Почитайте man mogrify! Там есть ещё очень много вариантов того, что можно сделать с картинками

[...] This post was mentioned on Twitter by Max Pilipenko, Web It! Studio. Web It! Studio said: Переверни Интернеты! http://is.gd/b9mSr [...]