
Хочу поделиться ссылками на пару моих статей на хабре, одна из которых была написана в апреле, потом неизвестно как попала в черновики и сегодня была возврращена на место. Вторая была написана вчера по мотивам возникшей у меня проблемы.
Периодически перед многими из вебмастеров возникает задача определить хостера, у которого живет тот или иной сайт. Мотивация для этого бывает самая разная, как простое любопытство, так и желание поселиться по соседству на хорошем и стабильном хостинге или наоборот не вляпаться в такое соседство. В этом посте я приведу несколько известных мне методов с их достоинствами и недостатками.
На досуге добавляя в фильтры AdBlock очередную баннерную сеть, подумал такую очевидную мысль: все популярные и как бы доходные рекламные сети, включая столь любимые публикой тизеры, уже давно добавлены во все возможные баннерорезки, коих уже немало. Одно только расширение AdBlock для Firefox, которым я успешно пользуюсь, имеет 813599 загрузок в неделю и является самым популярным расширением. Кроме того, во многих популярных виндоовых фаерволах, включая Outpost, уже давно есть встроенные баннерорезки.
Оценили насколько сужается аудитория и потенциальная прибыль?
Я должен был написать этот пост еще очень давно, три недели назад. Но все как-то руки не доходили. Теперь наконец дошли. Моя любимая девушка сделала мне вот такой замечательный подарок на День Вебмастера:
А вот и прототип:
Кстати, всем рекомендую. Кто держит (держал) кошку, тот поймет :-)
Свершилось!
И она работает!
Общее впечатление - быстрая, но еще шероховато. Есть небольшие глюки с рендерингом страниц и обработкой форм, но в основном юзабельно. Галерея скриншотов,в котороя я постарался отразить все асперты работы с новым браузером - под катом.
If you are using long file (more than 4Gb) support for C standart library (via defining _FILE_OFFSET_BITS 64 macro or something else) and lint shows you errors like this:
(88) warning: constant in conditional context argument unused in function (18) sig in sighandler value type declared inconsistently lseek llib-lc:unistd.h(396) long () :: unistd.h(396) long long () tell llib-lc:unistd.h(515) long () :: unistd.h(515) long long () ftello llib-lc:stdio.h(319) long () :: stdio.h(319) long long () function returns value which is always ignored fflush fprintf printf fwrite signal alarm lseek64 function argument ( number ) declared inconsistently ftruncate (arg 2) llib-lc:unistd.h(320) long :: unistd.h(320) long long lockf (arg 3) llib-lc:unistd.h(394) long :: unistd.h(394) long long lseek (arg 2) llib-lc:unistd.h(396) long :: unistd.h(396) long long pread (arg 4) llib-lc:unistd.h(410) long :: unistd.h(410) long long pwrite (arg 4) llib-lc:unistd.h(434) long :: unistd.h(434) long long truncate (arg 2) llib-lc:unistd.h(520) long :: unistd.h(520) long long fseeko (arg 2) llib-lc:stdio.h(318) long :: stdio.h(318) long long declared global, could be static min main.c(13) sighandler main.c(18) fp main.c(11)
...Don't panic! It's known bug:
The lint(1B) utility will generate spurious error messages when _FILE_OFFSET_BITS is set to 64. This is because the binary libc lint library, /usr/lib/llib-lc.ln, is compiled only for the standard interfaces, not with _FILE_OFFSET_BITS set to 64. This deficiency hampers static error-checking for programs compiled in the large file compilation environment. (Source)
Damn it, I lost 3 hours before I found it.
Последние комментарии
/Гость/ 2 недели 5 дней назад
/Гость/ 5 недель 23 часа назад
/Alek$/ 12 недель 3 дня назад
/Alek$/ 12 недель 3 дня назад
/Гость/ 12 недель 3 дня назад
/Гость/ 12 недель 3 дня назад
/marintsSER/ 14 недель 6 часов назад
/Alek$/ 16 недель 3 дня назад
/Виталий/ 16 недель 4 дня назад
/Alek$/ 18 недель 1 день назад