Archive for the ‘Работа’ Category

10 Советов: Делая Почтовые Рассылки…

Среда, Июль 16th, 2008

Делая почтовые рассылки, не забывайте:

1) Прописывать from и return-path.
Ваш SMTP (MTA) должен возвращать недоставленные письма на этот адрес. С пояснением о причине недоставки. Лучше вычищать кучу недоставленных писем из ящика, чем иметь жалобы клиентов. Адрес должен существовать, поскольку некоторые сервера проверяют его работоспособность.
При отправке через PHP mail(), адрес from указывается через дополнительный параметр -f sendmail.

2) Следить за заголовками писем.
Фильтры (SpamAssassin в частности) не любят поддельных X-Mailer. На баллы SpamAssassin влияют Message-ID и boundary, поскольку как правило они зависят от почтового клиента. Компоненты Indy (Delphi), к примеру, имеют boundary давно занесенный в черные списки.
А X-Powered-By с PHP - не лучшая строка в headers ваших писем.

3) Не стоит делать рассылку одновременно большому количеству адресатов на одном хосте (например, пару тысяч писем на mail.ru за один заход)

(more…)

@i.ua завалило спамом

Среда, Июль 16th, 2008

В июне I.ua (ua.fm, email.ua, 3g.ua / mail-in.iptelecom.net.ua) для своего почтового сервиса ввел проверку адреса-отправителя письма, указанного в From (Sender). Если письмо отправляется с несуществующего адреса, сервер выдает:

550-Verification failed for <%не@существующий.адрес%>
550-Called: %ваш-релей%
550-Sent: RCPT TO:<%не@существующий.адрес%>
550-Response: 550-You do not have sufficient privileges to send mail to this address. Please
550-550 authenticate and try again.
550 Sender verify failed

Ладно, будем отправлять с существующего.

Вариации на тему раньше выдавали и другие сервера (address rejected with reverse-check, Sender address rejected)

И это несмотря на наличие в их сервисе внутреннего антиспама. Очевидно в одиночку не справляется. То ли MTA сменили, то ли гайку подкрутили.

Укрнетовские gray lists мне нравятся больше.

Относительные пикселы или В чем задавать размер шрифта

Среда, Июль 2nd, 2008

Как вы все прекрасно знаете, консорциум W3C в стандарте CSS 2.1 дает нам для задания размеров, в частности шрифтов, абсолютные и относительные единицы измерения.

К абсолютным причислены:

  • in - inches, дюймы. 1 дюйм = 2.54 сантиметра
  • cm - сантиметры
  • mm - миллиметры
  • pt - points, пункты. 1 пункт = 1/72 дюйма. То что находится в выпадающем списке Ворда при выборе размера шрифта и есть пункты
  • pc - picas, пики. 1 пика = 12 пунктам

К относительным:

  • em - font-size, высота соответствующего шрифта (). Так же встречалось определение em - как ширины символа m.
  • ex - x-height, высота символа x соответствующего шрифта
  • px - пикселы

Вы заметили?
Пикселы - относительные еденицы измерения!
Как, а вы не знали? :)

(more…)

I, Parser. Как я пиратствовал. Я, Парсер

Воскресенье, Июнь 29th, 2008

На днях увлеченно вспоминал опыт годичной давности по парсингу сайтов разработке информационных баз в сети Интернет. В общем пиратствовал.

На этот раз все прошло существенно быстрее и комфортнее.

Работа закончена и теперь я с чистой совестью и полными карманами, отдаю в хорошие руки набор пирата. Почти новый.

Набор включает:
1. Человека с прямыми руками и со знанием PHP и регулярных выражений.
2. Сервер или локальную машина с апачем+пхп+mysql, подключенную к безлимитному каналу.
3. Скрипт загрузки индекса необходимых страниц и скрипт загрузки самих страниц.
4. Парсер, вытаскивающий нужные данные из выкачанной кучи мусора.
5. Красивый шаблон для оформления результатов. Excel, xml, csv или html.
6. Ну и какой же пират, без попугая-матершинника и черной повязки на глаз.

В выборе железа - предпочтительнее локальная машина или выделенный сервер. У шаред хостингов - масса ограничений. Особенно у дешевых. Вешать это все дело на крон - занятие крайне неблагодарное. Проверено.

При загрузке данных все решается просто - через curl. Пока админы пьют пиво - качаем все в один поток, с одного IP, без refferer, с простым User agent. А пока они допьют - все ихнее золотишко уже у нас. Хе-хе.

Пункты 3 и 4 комбинируются по ситуации. Все скрипты можно объединить в один большой цикл с одновременной выкачкой-парсингом. Если база маленькая то лучше так и поступить.

Самое трудоемкое во всем этом - написать регулярное выражение и исправить в нем все ошибки. Дальше - дело техники.

И… соблюдайте копирайт! :)

Разбирая regexp

Пятница, Май 30th, 2008

Меняю журнал кроссвордов и пять коробок пазлов на сборник регулярных выражений.

Разбивайте свои регулярные выражения на части.

Сколько стоит продвижение по запросу “Главная”?

Четверг, Май 29th, 2008

Ссылочное - великая вещь, особенно в бездарных руках.

Развивая тему внутренней оптимизации с ужасом обнаружил и что у самого куча внутренних ссылок на морду сайтов с анкором “Главная”.

И неужели так сложно писать вместо “Главная” - “Сайт Василия Пупкина”…

RSS старт. Google sitemap - на очереди

Воскресенье, Февраль 17th, 2008

This is a valid RSS feedRSS-канал (фида, лента, эрэсэс - нужное подчеркнуть) - создана, запущена в автоматическом режиме и опубликована.

Хотя у меня до сих пор недуомение по поводу необходимости замены html specialchars (&,>,<,’,”)  самих html tags внутри xml. Модуль работает с стандартным пространством имен RSS 2.0 плюс dc. Намеренно пропустил разве что проработку атрибутов enclosure, это пока незачем. Валидатор светит зеленым и это хорошо.

Есть большая надежда в то что лента повлияет на оперативность включения новых страниц. Во всяком случае в самых ближайших планах - google sitemap. Хотя кто придумал так называть список страниц сайта? Это определенно siteindex, а не sitemap. Поскольку карта на то и карта, что должна содержать структуру. В данном случае - сайта. Ведь в простейшем случае все эти sitemap’s - только список страниц тупому роботу, который почему-то кладет на под полку большую часть страниц.

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

Но красота кода и структуры - разговор отдельный…

Работа. Вкалываем потихоньку

Пятница, Февраль 15th, 2008

Гугл практически перестал есть новые страницы сайта. Терзают смутные сомнения. Делаю rss ленту новых страниц. На очереди sitemap.

Кстати о RSS. Два года назад разбирался в формате (2.0) и написал модуль для создания. Тогда тема не особо пригодилась, хотя все еще используется. Вечер доработки и модуль с админкой встали под новый движок. От кошерного RSS с юникодом отказался ввиду возни с перекодировкой. Сейчас остро стоит вопрос времени.

“Изменились” приоритеты развития. Теперь в спешном порядке подключаю магазин к порталам. Для начала bigmir.net, на очереди объявления в ПС. С рекламой в ПС - идея плохая, но пока рекламный бюджет не откусил кусок больше прибыли - идея хорошая.

По мере работы копирайтер(ов) появляются факты плагиата и случаи успешной борьбы с ними. Пока что несистематической. Но об этом я еще напишу пост. А пока - вкалывать! :)

Будни: страницы в индексе

Среда, Январь 30th, 2008

Уж не знаю где лажанулся, но в индексе Гугла на этой неделе неожиданно резко уменьшилось количество страниц проекта (с 2′копейками тысяч до 1600). Это нехорошо, поскольку влияет на а) поиск редких позиций встречающихся на сайте б) вес и все такое. Плюс к тому Гугл неохотно индексирует новые позиции. Хотя срез по среднечастотке в новом разделе он съел быстро.

Пришлось заняться тем, что я долго откладывал - переделал страницу перечня позиций-”под запрос” и разбил ее на несколько по признаку категории. Плюс вывел ссылку раздела на морду. Для пущего эффекта индексации и ее скорости. Поисковики не любят когда им под нос тычут страницы с сотнями ссылок.
А я когда-то еще хотел сделать полную мапу сайта. Хех.

Переделал поиск. Там тоже было нелады. Возможно, Гугл индексировал удаленные позиции на основании ссылок из поиска, только из-за того, что у страницы перечня слишком малый вес.

В итоге Гугл что-то потихоньку себе там индексирует и в индексе снова 2200. Хотя конечно есть мнение, что это просто периодическая склейка похожих страниц. А там есть что склеивать.

Во всяком случае Гугл мне нравится определенно больше чем Яндекс. Точнее Яндекс мне не нравится вообще. Объяснять думаю не нужно. Благо работать под него не приходится.

Блуждая в трех березах

Понедельник, Январь 28th, 2008

Всегда, выстраивая логику из трех переменных, вспоминаю своего преподавателя физики. Помню, любил при случае поговаривать, мол с двумя величинами в задачках разбираемся, а в трех березах - заблудились. И по-доброму так посмеивался. :)

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