Хостинг куплен, имя, пароль и адрес сервера получены. Захожу на сайт и попадаю в CPanle. До этого момента я сильно не задумывался, как происходит управление своим хостингом. В 2000 году я, "как все", сделал простенькую HomePage и разместил ее копированием файлов на сервер. Тогда на меня этот процесс произвел впечатление: скопировал файлы, и твоя информация доступна в интеренете любому желающему. CPanel тоже произвел на меня впечатление, и первым делом я принялся сначала осваивать эту замечательную штуку.
Выбранный хостинг предоставлял работу RoR через FastCGI, я немного скептически был настроен по поводу FastCGI, но надеялся, что достаточно быстро удастся разместить приложение на сервере. Сначала решил отработать сам сценарий развертывания на простом учебном приложении. Если проблем с созданием базы данных у меня не возникло, то с развертыванием они начались. Чего больше боялся, то и произошло: установленный пример на RoR отказался запускаться. Перепробовал несколько "рецептов" настройки RoR и FastCGI, но ничего не помогло, за помощью решил обратился к администраторам. С ними началась активная переписка, в итоге они обновили Ruby, RoR, все пакеты, обновили модули FastCGI для Apache. Приложение заменил на простейшее "Hello Word". В интернете перечитал много информации и инструкций по настройке RoR через FastCGI, давал ссылки администраторам. Но нам так и не удалось заставить работать RoR. В определенный момент я хотел поставить у себя на компьютере linux, apache и самому начать экспериментировать с настройками, но не успел. Хостер предложил создать мне тестовый аккаунт на другом сервере и там продолжать настраивать RoR. Новая попытка заставить работать RoR через FastCGI провалилась.Я предложил отказаться от дальнейших попыток настройки FastCGI и попробовать сделать кластер из Mongrel серверов, аргументировал это тем, что на данный момент это самый простой и работоспособный способ развертывания. Хостер согласился с таким поворотом событий и приступил к настройке Mongrel в связке с Apache и CPanel. После некоторых небольших технических трудностей наконец-то удалось заставить работать RoR через Mongrel. Я разместил на сервере свое приложение с целью тестирования и принялся за дело. После всех манипуляций мой сайт работал только на определенном порту. Стал настраивать перенаправление запросов через Rewrite Url в CPanel - не помогло, обратился к админам, они что -то подкрутили, и все перестало работать вообще . Как потом выяснилось, они сделали перенаправление с тестового аккаунта на основной. Чтобы самому не путаться и не путать админов, попросил тестовый аккаунт сделать основным, а второй удалить. Приложение снова заработало, но проблема осталось: оно по-прежнему "сидело" на определенном порту. Обратился к администраторам, они сделали перенаправление, и все заработало, как надо, но ненадолго, через какой-то промежуток времени заметил, что все ссылки ведут на локальный адрес 127.0.0.1:1205. После того как исправили эту ошибку, появилась другая: ссылки стали указывать в качестве хоста не имя домена, а сетевое имя сервера. Как потом выяснилось, при создании тестового аккаунта было указано другое главное имя домена, пришлось удалять аккаунт и создавать его снова. Новый аккаунт удалось настроить достаточно быстро, при этом опять повторялась проблема с локальными адресами в ссылках, но ее тут же решили. Нерешенным остался один момент: к сайту можно обратиться, указывая протокол "www", но при заполнении и отправке любой формы на сервер теряется название протокола, остается только "http://".
С момента моего первого входа в CPanel и до полной настройки работоспособности сайта прошло без малого полтора месяца.
Вывод.
Эта история еще раз доказывает, что "знание - сила" и порой опыт достается нам не легко.
четверг, 22 ноября 2007 г.
Виражи на поворотах, или как я делал первый раз deploy RoR проекта.
Labels: startup one
вторник, 20 ноября 2007 г.
Нелегкий выбор хостинг-компании.
Сайт был практически завершен, и настало время размещать его в интернете. Передо мной встал вопрос по выбору хостинга. Сначала я намеревался использовать бесплатный хостинг, но в таком случае невозможно было использовать собственное доменное имя, не поддерживались необходимые мне технологии, существовали ограничения по трафику, по созданию почтовых ящиков и т.п. Для начала стал изучать общие сведения о хостинге:
- что такое хостинг;
- как он организован;
- типы хостинга (бесплатный, shared, VDS) и преимущества одного перед другим;
- как управлять своим хостингом;
- как выбирать хостинг - компанию.
Используемый мной framework Ruby on Rails достаточно молодой, и еще не все хостинги поддерживают его. Мне пришлось потратить достаточно много времени, чтобы отобрать хостинг-комании, которые удовлетворяли бы моим требованиям, а именно:
- поддержка RoR, MySQL;
- цена не более 6$ в месяц;
- тех. поддержка на русском языке.
- TimeWeb, "Year", 120/1300 (руб), mod_ruby, Россия;
- ЧУП Активные технологии, Мини, 6/65($), FastCG, Белоруссия;
- Best-Hosting, Unix hosting plan "Beginner", 2436 (руб в год), Россия;
- FastNext, Стандарт, 145/1740 (руб), FastCGI, Россия;
- FirstVDS.ru, VDS-Старт, 149/1788 (руб), Вирт. сервер, Россия.
Поначалу заинтересовался виртуальным хостингом от FirstVDS, но смущало следующее: хватит ли ресурсов на минимальном тарифном плане, и справлюсь ли я самостоятельно с установкой и настройкой софта под linux. Опыта в установке и настройке программного обеспечения под Linux у меня не было. В итоге решил на данном проекте не рисковать с виртуальным хостингом (одного желания самому все поставить и настроить не достаточно), а выбрать shared-хостинг. В результате сравнения различных характеристик (цена, поддерживаемые технологии, различные ограничения, положительные и отрицательные отзывы) shared-хостингов выбрал тарифный план "Стандарт" от FastNext.
Приобрести пакет услуг у FastNext оказалось достаточно быстро, утром я заполнил анкету, указал также доменное имя. В обед со мной по почте связался менеджер и предложил помощь в вопросах, связанных с оплатой. Спустя пару часов я сделал банковский перевод, сообщил об этом менеджеру, и спустя час после оплаты у меня уже был аккаунт. Весь процесс от выбора хостинга до получения аккаунта у меня занял около двух недель.
Дальше началась новая история с развертыванием приложения RoR на хостинге.
Labels: startup one
пятница, 9 ноября 2007 г.
Конкуренты как гром среди ясного неба.
Сайт был практически готов, я занимался тестированием, исправлением ошибок, проверкой работы сайта в различных браузерах, все шло по заранее намеченному плану.
Ради интереса сделал в яндексе запрос по ключевым словам, относящимся к моему сайту, ранее такое сочетание ключевых слов я не использовал. Результат не заставил себя ждать, я сразу же нашел конкурентов с моей реализованной идеей...Это находка была как гром среди ясного неба. Сразу же возникли вопросы: что делать? почему за все время работы я так и не нашел их раньше? что мне теперь делать с уже почти готовым сайтом? В тот момент эмоции меня переполняли, думаю, многие из нас попадали в подобные ситуации. Возникала даже мысль бросить работу над проектом. Первое, что я сделал, это успокоил свои эмоции. Следующим шагом стало знакомство с найденными проектами. В результате получилась следующая картина:
- это не специализированные сайты, а сообщества на универсальных сервисах ("Мой круг", Diary);
- небольшая аудитория зарегистрированных читателей и авторов;
- последние материалы опубликованы около года назад;
- помимо оригинальных текстов присутствуют перепечатки из других открытых источников;
В конечном итоге найденные сайты помогли выработать стратегию дальнейшего развития, а именно:
- в дальнейшем проект будет развиваться в сторону узкотематического портала;
- публикация оригинального материала;
- внедрение некоторых оригинальных находок, которые никогда не появятся у конкурентов;
- организация каких-либо мероприятий, которые подталкивали бы пассивных читателей к написанию и публикации своих материалов.
- придется приложить немало усилий в области продвижения и популяризации сайта;
- не стоит рассчитывать на пользовательский контент на начальном этапе.
Вывод.
Для себя сделал такой вывод : конкуренция - это хорошо, главное - не игнорировать конкурентов. Благодаря им теперь точно знаю, что не буду делать на сайте, и более уверенно смотрю в будущее всего проекта.
Labels: startup one
пятница, 2 ноября 2007 г.
Дизайн.
Создание дизайна сайта заняло у меня очень много времени, это и не удивительно: опыта такой работы у меня не было. Пришлось разбираться с такими понятиями, как юзабилити, типографика, дизайн, графика. В работе мне помогали статьи с сайта Design For Masters.
Первый вариант дизайна я делал, ни на кого не ориентируясь, сам придумал компановку, оформление, подобрал цвета. Сложность была одна: я знал, что мне надо, но не всегда представлял, как это сделать, а если и делал, то результат был далек от задуманного. В итоге первый вариант получился просто никаким. Однажды, когда я искал в интернете ответ на какой-то вопрос по CSS, я натолкнулся на такое понятие, как "шаблон дизайна для сайта". Как оказалось, это пример дизайна, выполненный для первой странички, где вместо текста используется "lorem ipsum dolor..". Я нашел несколько сайтов, которые в большом количестве предлагали подобные шаблоны бесплатно, вместо платы они просили размещать ссылку на их сайт. Весь вечер и до глубокой ночи я просматривал эти шаблоны и отобрал около двух десятков подходящих по оформлению для моего будуего сайта. Эти шаблоны я рассчитывал использовать в качестве отправной точки, т.е. взять самый понравившийся и на основе него уже сделать дизайн. Из всего многообразия скачанных шаблонов я отобрал и отсортировал в порядке приоритета около пяти штук и принялся за переработку дизайна. Сделать дизайн сайта на основе первого шаблона было интересно в том плане, что позволило взглянуть на реализацию своей идеи чужими глазами, в данном случае глазами автора шаблона. В дальнейшем я последовательно переделывал дизайн основных страниц под другие шаблоны в надежде потом выбрать среди них наилучший. В процесе этого занятия оценил то, что использование HTML для семантической разметки текста, а CSS для визуального отображения дает очень много плюсов. Практически у меня получился готовый механизм смены визуальных тем оформления.
Смущало одно: необходимость поставить обратную ссылку на сайт шаблонов, что в итоге привело к решению отказаться от использования каких- либо готовых шаблонов. Ход моих мыслей был примерно таким: попробовать в очередной раз сделать дизайн и вёрстку самостоятельно, если не получится, то творчески переработать один из шаблонов. В итоге решил оставить сделанный самостоятельно дизайн, хотя он и остается немного угловатым и простым. Польза от шаблонов была очевидна, я получил опыт, который позволил сделать дизайн самостоятельно.
Ситуация с графическими элементами оказалась хуже, чем я мог представить, я знал, чего хочу, но не знал, как это нарисовать, а научиться рисовать за короткое время не реально. Пришлось признать, что ходужником мне не стать, особенно это понимаешь после просмотра работ студии TurboMilk. Единственную надежду я возлагал на поиск свободно распространяемых рисунков, но найти достаточного количества мне не удалось, а среди найденных не было подходящих. Все подходящие рисунки были защищены авторскими правами, я не стал их использовать. В итоге решил совсем отказаться от графического оформления.
В последнее время в интернете стали появляться сервисы, которые можно использовать при создания сайтов. Работая над макетом и дизайном, я пробовал использовать следующие on-line инструменты:
- Kuler от Adobe - подбор сочетающихся между собой цветов.
- Color Scheme Generator 2 - тоже подбор цветов.
- Logo Maker : Web 2.0 Stylr - позволяет сделать логотип в стиле Web2.0
- Web2.0 Logo Creator by Alex P - создание логотипа.
- Favicon.cc Generator - редактор иконок favicon.
- YAML builder - сервис позволяет создавать различные варианты вёрстки.
- Typetester - сервис позволяет визуально сравнить между собой несколько шрифтов.
- Cooltext - позволяет создавать логотипы, кнопки, надписи с различными эффектами .
Вывод.
К дизайну и usability подходит выражение "Усложнять - просто, упрощать - сложно". Умение находить золотую середину приходит с опытом, а, чтобы получить опыт, необходимо много работать.
Labels: startup one