WEB

Новый дизайн блога

Дизайн до 27.03.2011

В эти выходные поменял дизайн блога. На самом деле, менять шаблон блога понадобилось вовсе не потому, что оформление не нравилось. Прежний дизайн меня вполне устраивал, за исключением того, что страниц много развелось и их заголовки перестали помещаться в отведенное для меню место. Просто прежний шаблон устарел технически. По крайней мере, я так решил. Установив новый лайтбокс для плавного показа картинок, я обнаружил, что он не работает на моем блоге. В документации разработчика было сказано, что одна из возможных причин неработоспособности — тема оформления не поддерживает его. Попробовал встроенную тему оформления для WordPress 3.1 и обнаружил, что с ней лайтбокс работает. Тогда и решил обновить шкурку. Для WordPress очень много бесплатных тем, но все более-менее сносные скачаны уже по несколько тысяч раз, а мне хотелось что-нибудь уникальное, не обязательно очень крутое и качественное, но уникальное. Вот и стал мастерить.

Не мудрствуя лукаво, макет сохранил трехколоночный, потому что к нему привык уже и мне такой макет представляется удобным. Цвета выбрал теплые но не красные. А чтобы блог отличался от других сделал свою шапку в виде коллажа. Поискал в интернете картинки. Нашел афишу к пьесе Гоголя (взял из неё заголовок), мужика с авторучкой на плече, стикер со скрепкой (почему-то он мне понравился) и… и все, больше ничего подходящего и не нашел. Наделал сам стикеров с несколькими фразами, заполнив ими остальную площадь, но чего-то не хватало, какой-то изюменки… и я решил, что мне нужна женская грудь. Порылся в поисках картинок по ключевой фразе «самая красивая грудь», но ничего подходящего не попалось. Тогда решил поискать в домашнем фотоархиве и остановился на этом изображении. Дело было на природе, вертикальное темное на заднем плане — это волосы, наклон обусловлен опорой руками на дерево.

Раньше как-то не доводилось работать с графическими редакторами, если не считать поворота, обрезки и конвертации форматов, а тут столкнулся, аж самому понравилось. Дизайнер из меня, конечно, тот еще, но все равно понравилось. Лепить коллажи — это забавно. Вот такой подарок я смастерил себе ко дню рождения. Надеюсь, мой постоянный читатель скажет хотя бы пару слов о новом дизайне блога. Готов выслушать конструктивную критику.

Куда девался хостинг Hostius

Хостинг на халявуПростая логика подсказывает, что темы для блога должны быть если уж не интересными, то, по крайней мере, актуальными. Когда в Египте убивала людей сумасшедшая акула, в поисковиках была популярной фраза «акулы в Египте». Когда террористы взорвали аэропорт, напуганные и возмущенные люди беспокоились о своей безопасности. А сейчас многие клиенты хостинга Hostius в ярости жаждят хоть кого-нибудь убить за то, что их сайты недоступны уже больше 3 суток.

Конечно, хостер не виноват. Хостер не может быть виноват, это просто случайное стечение обстоятельств. Как вебмастера время от времени переезжают с хостинга на хостинг, так и хостинги иногда вынуждены переезжать из одного датацентра в другой в поисках оптимального соотношения цены и качества сервиса. Hostius — не исключение, за свою недолгую жизнь он уже много раз переезжал, но вот уже 3 суток его хостинг недоступен.

Ну и черт с ним. Зато эта ситуация привела к тому, что я открыл для себя другой замечательный хостинг. Когда я подбираю себе хостинг, то после беглого взгляда на тарифы ищу действительно важные параметры хостинга, о которых многие неискушенные вебмастера «забывают». Это ОЗУ (memory_limit) и максимально разрешенное время на выполнение одного запроса скрипта (max_execution_time). Уже встречались хостеры, у которых эти параметры на уровне бесплатных хостингов и нет никакого смысла платить за такой сервис, когда им можно пользоваться бесплатно.

На вебхосте: ОЗУ = 128 Мб,  max_execution_time = 30 сек, цена — за каждый гиг 1 бакс (1 Гб — $1, 3 Гб — $3, 5 Гб — $5 и т.д.). Адекватная техподдержка по ICQ. Шикарная панель управления. Возможность управлять расположением сайтов на диске.

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

P.S.: (13.02.2011) К вечеру 13.02.2011 панель управления сайтами и сам сайт hostius.ru стали доступны. Всем потерпевшим добавлено 150 дней бесплатного хостинга. Признаться, это на много больше, чем я ожидал. Не представляю, какой доход приносит владельцу этот бизнес, но при таких низких ценах на хостинг он наверняка этим жестом отправил себя далеко в минус. Прямо захотелось ему помочь… ну хоть чем-нибудь… а потом как-то сразу перехотелось.
Теперь ему как восставшему из пепла надо Фениксом называться. На самом деле, всякое бывает. И на старуху бывает проруха. Даже с учетом этой истории Hostius все равно на первом месте по цене за 1 Гб при 128 Мб ОЗУ. Да, и вот еще что, мораль: «Не нужно пренебрегать резервными копиями».  Надеюсь и владелец Хостиуса сделает для себя выводы. Ведь «Все, что нас не убивает, делает нас сильнее».

P.P.S.: В конце февраля Хостиус окончательно подох. А я сам опробовал наконец-то новую свою находку: вебхост, который оказался действительно отличным хостингом с ценой 10 баксов в месяц за 1 Гбайт.

Платный хостинг на халяву

Хостинг на халявуХалява — понятие относительное. Скажем, 100 тысяч рублей — это много или мало или это вообще халява.  Если за ржавую восьмерку, то это много, если за пятилетнюю Тойоту Короллу — то очень дешево, а если квартиру купить за эту цену — то это реально халява. Но я отвлекся.

Похоже, я снова переезжаю. С февраля у меня был хостинг за 100 руб. в мес. Места на жестком диске 1 Гб, ОЗУ — 128 Мб, все остальное — не ограничено. Я считал, что это не дорого. Причем, переехав на него, я сразу заметил увеличение скорости работы сайтов и их постоянную доступность. Собственно, в этом и была проблема на предыдущем хостинге — hostace.ru — сайты постоянно были недоступны, а тут — за полгода uptime 99.5 %. И все было бы хорошо, но мне никак не удавалось настроить cron. Он у меня там вообще не запускался, а техподдержка там фактически отсутствовала. Тогда я и стал подыскивать другой хостинг. И нашел. Те же 1 Гб на HDD и 128 Мб ОЗУ но всего за 20 руб. в мес. Даже бесплатный тестовый период есть — 3 дня. Это не много, но вполне можно протестировать работоспособность.

По-моему — это халява. Это 2 поездки на троллейбусе. Цена просто не реально низкая. Единственное, что меня беспокоит, что ребята просто прогорят с такими ценами. Даже за год это в 2.5 раза меньше номинальной стоимости регистрации/продления домена. Вообще реальная халява. Проверил cron — работает. Буду потихоньку перебираться на этот новый хостинг — hostius. Даже если у него и будет uptime пониже и скорость поменьше, для такой халявы это можно и простить.

P.S.: (12.02.2011) Свежие комментарии посетителей блога (Егор, Алена, спасибо) вернули меня к этой статье. Да, хостиус себя дискредитировал. 1 день — это еще можно было бы как-то понять (с учетом цены), но прошло уже трое суток… Не только сайты не работают, сам хостер недоступен, хотя на письмо ответил, сказал, что делает все возможное.

Однако, сопли в сторону. Пришлось искать замену, и я нашел отличный хостинг.  Надеюсь, чутье меня не подводит, первое впечатление очень приятное. ОЗУ — 128 Мб, max_execution_time = 30 сек. (вполне достаточно). Простая и заманчивая тарифная сетка: «Сколько надо Гигов, столько платить баксов». Интуитивная и очень функциональная панель управления. Техподдержка по ICQ (обращался среди ночи — сразу ответили). Да еще и пинг более чем в 2 раза лучше большинства из просмотренных хостингов. В общем, мечта, а не хостинг. Велком, господа.

Настройка ДНС (Часть 3). Записи PTR

ДНССегодня поговорим про PTR записи DNS. Почему? Потому что достали. Чаще всего приходится сталкиваться с записями DNS типа A, чуть реже — MX и CNAME, бывает, что и NS записи редактируешь. А вот PTR записи простому смертному руками не потрогать. Сейчас расскажу, что это и для чего они вообще нужны.
PTR записи — это записи в зоне обратного просмотра. Основная функция ДНС сервера — ставить в соответствие именам их IP адреса. IP сети, на которых построен наш любимый интернет, работают не с именами, к корорым мы привыкли и которые легко (или не очень) запоминаются человеком, а с IP адресами, которые представляют собой наборы цифр. Цифры запоминать сложнее, чем слова, пусть даже и в латинской транскрипции. Ну, например, что проще запомнить и ввести в адресной строке «217.69.128.44» или «mail.ru»?
Вот этим и занимается DNS сервер, что преобразует второе в первое, т.е. имя в адрес. Для этого на сервере есть записи типа A. Но ДНС сервер может так же решать и обратную задачу — по известному адресу определять имя, которое ему соответствует. Для этого и существуют зоны обратного просмотра, а в них записи типа PTR.
Некоторые почтовые серверы бракуют адрес, с которого приходит письмо, если для него нет записи PTR. На этом основан один из методов борьбы со спамом. Поэтому для нормальной работы почтового сервера необходимо сделать для него корректную запись. Ну и что за проблема, бери и делай. А проблема заключается в том, что управляет такими записями уже не тот, кто владеет доменом, т.е. не я, а тот, кто владеет данным IP адресом, т.е. — провайдер, через которого подключен данный сервер.
Таким образом, если у меня есть домен, и я могу сам даже бесплатно воспользоваться услугами DNS сервера, которых сейчас полно, и за считанные минуты сделать там все записи, которые мне нужны. То для того чтобы сделать записи PTR, мне нужно связываться с провайдером и просить его, чтобы он там у себя все это сделал.
Вроде бы серьезная компания «Ростелеком». 11 дней назад обратился с просьбой сделать соответствующие записи. Тут же получил ответ, что заявка принята в работу. Время от времени проверяю, не сделали ли. Почта пока ходит через раз, т.е. в зависимости от настроек сервера-получателя…
Как проверить? Как обычно, с помощью программы nslookup. Покажу на примере mail.ru:

> nslookup      // Запускаем её в командной строке
> set type=ptr  // выбираем тип записей, которые нас интересуют
> 217.69.128.44 // вводим адрес (раньше подсмотрел через ping)
// получаем ответ:
44.128.69.217.in-addr.arpa name = mail.ru

128.69.217.in-addr.arpa nameserver = ns4.mail.ru
128.69.217.in-addr.arpa nameserver = ns5.mail.ru
128.69.217.in-addr.arpa nameserver = ns3.mail.ru
128.69.217.in-addr.arpa nameserver = ns.mail.ru
128.69.217.in-addr.arpa nameserver = ns2.mail.ru
128.69.217.in-addr.arpa nameserver = ns1.mail.ru
ns.mail.ru internet address = 94.100.178.70
ns2.mail.ru internet address = 94.100.179.163
ns1.mail.ru internet address = 94.100.179.159
ns4.mail.ru internet address = 94.100.178.64
ns5.mail.ru internet address = 94.100.178.54
ns3.mail.ru internet address = 94.100.178.66

Не пугайтесь именно так они и выглядят. Числа идут в обратном порядке и в конце приписывается «in-addr.arpa». Так уж договорились. Из ответа видно, что IP адресу 217.69.128.44 соответствует имя mail.ru, а за диапазон адресов 217.69.128.Х отвечают шесть серверов: ns4.mail.ru, ns5.mail.ru ns3.mail.ru ns.mail.ru ns2.mail.ru ns1.mail.ru. Т.е. у них все хорошо, у меня плохо, т.к. в ответ на мой запрос я получаю: «Non-existent domain«. Подождем, твою мать.

Установка форума на Drupal

Есть у меня сайт на CMS Drupal. Захотелось сделать в нем кроме статических страничек ещё и форум. Штатный модуль Forum есть в самой цмске, поэтому я думал, что просто включу его, немного поднастрою и все. Но оказалось, что встроенный модуль совсем никуда не годится. Он не просто прост, а скорее убог. Поискал информацию на Друпал.ру, оказалось, что нужно ставить АдванцедФорум с сайта Друпал.орг (http://drupal.org/project/advanced_forum). Поставил его, но… результат не выдерживал никакой критики с точки зрения функционала. Каждую функцию нужно искать, устанавливать, настраивать и тестировать отдельно. Это, конечно, хорошо, что на сайте будет только то, что на самом деле хочется там видеть и ничего лишнего, но мне хотелось комплексного решения.

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

На этих же друпаловских сайтах обнаружил, что есть так называемые модули интеграции, которые позволяют встроить сторонний форум в Друпал. В частности, речь шла об интеграции форумов SMFforum и phpBB3, посмотрев отзывы, остановился на phpBB3. Порядок действий такой. Скачиваем модуль интеграции со странички http://drupal.org/project/phpbbforum. Там же ссылка на сам форум phpBB. Устанавливаем сначала сам форум в подкаталог \phpBB3 от корня Друпала, затем модуль интеграции. Инструкции, как обычно, вложены в инсталяшку.

С установкой модуля возился долго, так как в описании оказалось очень много буков (да еще и на вражеском языке), а ход установки далеко не интуитивным. Это не как обычно — скопировать на сервер в каталог модулей и подключить в админке. Но язык изложения оказался достаточно доступным для моего восприятия. И все бы было ничего, но столкнулся я с одной проблемкой. После копирования модуля интеграции его нужно было «пропатчить», т.е. применить к нему прилагаемый patch. А как это сделать, я понятия не имел.

Немного погулгив, выяснил, что нужно зайти на сервере в командную строку SSH и именно в ней выполнить соответствующую команду. Для никсовой системы, а именно на таких обычно живут хостинги, эта команда родная. НО у меня нет доступа к SSH своего сайта, хостер такую возможность не предоставляет. Тогда нужно патчить на своем ПК и переносить на хостинг уже пропатченные файлы. НО виндовая система слыхом не слыхивала про такую команду.

Снова гугление и на том же Друпал.ру нахожу простой ответ (спасибо restyler и ii). Скачиваем пакет утилит http://sourceforge.net/projects/unxutils, находим там patch и копируем, например, в каталог Windows (или в любой другой, перечисленный в переменной PATH), чтобы программа была доступна из любого каталога. Теперь из каталога с инсталяхой можно выполнить вожделенную команду
patch -p0 < file.patch
где file.patch — имя файла, который нужно применить к инсталяхе.

В результате я получил нормальный форум с традиционным для форума набором функций. Конечно, и для phpBB3 есть полно разных модулей расширения. Как известно, нет предела совершенствованию, но этим уже можно заниматься и постепенно.

Настройка ДНС (Часть 2)

Большинство современных бесплатных хостингов одновременно с хостингом предоставляют и бесплатное доменное имя третьего уровня для размещения Вашего сайта. Выглядит это следующим образом. При регистрации Вас просят указать свое имя пользователя для работы в системе (UserName / User / Nic). К этому имени добавляется один из доменов хостера — домен второго уровня. В результате получается имя Вашего домена в виде Ваше_Имя.Домен_Хостера.Зона, например, user1.000space.com. Если по этому адресу обратиться в браузере, то он будет доступен сразу же после регистрации. Это удобно. Можно, не теряя времени, начать выгружать на хостинг свой сайт и, если содержимое сайта не зависит от его имени домена, то он сразу же будет работать. А нам вообще незачем знать, что такое DNS (ДНС). Но если мы хотим, чтобы наш сайт отзывался на доменное имя второго уровня, которое мы предусмотрительно зарегистрировали специально для этого сайта, то нужно сделать еще несколько действий.

Рассмотрим настройку DNS на примере хостинга byethost с панелью управления CPanel (VistaPanel), как самого распространенного варианта. На главной странице (Home) панели управления есть группа ссылок Domains. В ней три ссылки:
— Sub domains,
— Addon domains,
— Parked domains.

Что это?

С первой Sub domains, надеюсь, понятно. Вы можете создать домены, дочерние по отношению к Вашему домену.

Вторая Addon domains предназначена для создания нового каталога для отдельного сайта в рамках вашей учетной записи. Обычно имя создаваемого каталога на диске соответствует имени добавляемого вами домена. Можно воспользоваться именно этой функцией и тогда уже выгружать свой сайт в этот самый каталог, не забывая о том, что файлы нужно копировать не непосредственно в него, а в его подкаталог htdocs (для 000webhost — public_html) или каталог с другим именем. На разных хостингах имена каталогов могут отличаться. Добавляя домены таким образом, вы получаете физически разные сайты.

Третий вариант Parked domains — это практически только записи DNS, записи типа CNAME, иными словами — псевдонимы вашего основного доменного имени. Создание такой записи не добавляет нового сайта, а создает дополнительное имя для уже существующего.

Вернемся к нашему примеру. Предположим, что при регистрации на хостинге мы указали имя пользователя user1 и хостер создал для нас домен user1.000space.com. Мы выгрузили свой сайт и он даже работает (ну, или, по крайней мере, открывается). А теперь нам нужно, чтобы этот сайт отзывался на доменное имя второго уровня po-moemu.ru, т.е. был доступен по адресу http://po-moemu.ru. Щелкаем в панели управления по ссылке Parked domains, в выпадающем списке Park On выбираем (если уже не выбрано) наш первоначальный домен user1.000space.com, а в поле Domain Name вписываем наш собственный домен po-moemu.ru. Затем, нажимая на кнопку Add Parked Domain, мы создаем запись DNS типа CNAME, которая связывает новое имя po-moemu.ru с прежним user1.000space.com. Но это еще не все.

Про то, что наш сайт должен откликаться на только что заданное имя знают только DNS-серверы хостера. Этого недостаточно. Нужно чтобы об этом узнали все DNS-серверы во всем интернете. Для этого необходимо в панели регистратора домена (не путать с панелью хостинга, которую мы сейчас обсуждали) указать серверы DNS, которые отвечают за наш домен, являются авторитетными для него. Где их взять? В панели управления хостинга внизу страницы Parked domains есть раздел Name Servers to use, в котором записаны DNS-серверы хостера. Их и нужно указать в панели управления регистратора. Правда, здесь есть один ньюанс, который я уже описывал в статье Настройка ДНС (Часть 1). Не буду повторяться, хотя он и очень важный.

Теперь наш сайт должен отзываться как на первое, так и на второе имя, НО не сразу. Пока все серверы в интернете узнают о том, что теперь наш домен управляется новыми серверами, может пройти от 6 до 48 часов. Придется подождать.

Небольшая оговорка. Не у всех хостеров настройка DNS выглядит именно так. Здесь описан самый характерный вариант для бесплатных хостингов. В общем случае, хостинг может и не предоставлять свои серверы DNS, а просто назвать IP-адрес, по которому находится наш сайт. Тогда нужно позаботиться о том, чтобы в панели управления регистратора был указан тот сервер ДНС, который держит запись типа A, указывающую на этот IP-адрес. Но это уже отдельный разговор.

Обзор бесплатных хостингов

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

1. 000webhost.com

Раньше был вполне хорош, т.к. только он дает 32 Мб ОЗУ, но в последнее время сайты на этом хостинге часто недоступны из-за ограничений на количество обращений к БД в единицу времени. А такой монстр как Drupal базу дергает интенсивно до неприличия. Таблиц очень много. Годится этот хостинг только для «песочницы», даже сотня уников на Drupal его просто завалит. НО если юзать CMS попроще или совсем без БД, то самое то.
(+) Не смотря на заявленное ограничение на размер файла в 2 Мб, мне без проблем удавалось скопировать и использовать там FLV размером 13 Мб.
(-) Крайне проблематично создать там учетную запись или добавить домен к существующей.

2. byethost.com

Дает 24 Мб ОЗУ, Max Execution time = 10 сек, гиги места под сайт, сотни гигов под трафик. У него есть бесчисленное множество реселлеров. Например:
— 000space.com,
— b13.su,
— gofreeserve.com
и т.д.
Реселлеры отличаются тем, что ресурсов дают поменьше. А вообще, как повезет. Многое зависит от конкретного сервера, на который попадет Ваш конкретный сайт. Реселлер легко узнается по имени ДНС серверов, которые хостинг просит указать в качестве авторитетных для вашего домена, если Вы подключаете свой домен второго уровня. Обычно, если указать в панели регистра домена те серверы, то домен не будет делегирован. Про то, как настроить DNS у этих реселеров, я уже писал.
(-) не дает копировать на сервер большие файлы (> 1.5 Мб)

И это все.

Есть еще варианты клонов/реселлеров одного хостера, который отличается от предудущего тем, что максимальный размер файла на хостинге не 2 Мб, а 500 Кб. На таком вообще запуститься не удастся, т.к. многие .php файлы больше 500 кб. Приведу несколько для расширения картины:
— totage.de.nr,
— www.leadhoster.com,
— www.agilityhoster.com.
Повторюсь, они НЕ пригодны для работы, не тратьте на них время.

Еще из непригодных вариантов есть такие хостеры:
— surge8.com — там вообще ОЗУ 16 Мб, хотя и 20 сек.;
— byethost12.com — 16 Мб, 10 сек.;
— sqweebs.com — 16 Мб, 20 сек., safe_mode is ON;
— fh50.com (клон sqweebs.com) ;
— freehostia.com — 128 Мб ОЗУ,  Max Execution time = 30 сек — правда, круто? Но fsockopen() — отключено и для работы НЕ пригоден.

Еще есть ну очень клевый, вообще не такой как все. Сервисов полно, в том числе и вебдиск. Не требует задавать свои серверы ДНС в качестве авторитетных, в результате чего остается полная свобода настройки ДНС — это бывает важно. Дает 32 Мб,  30 сек. Но есть один досадный ньюанс: English ONLY. Русские сносятся без предупреждения. В правилах у него сказано (мой вольный перевод): «Все наши сотрудники англоговорящие, а нам же надо как-то модерировать сайты, так что сорри».