Как это работает

Статья о том, как появился и работает этот сайт.

(с исправлениями от 11.11.2012)

 

Сначала у меня дома появился безлимитный Интернет. Имевшийся уже к тому моменту нетбук Sumsung N130 тут же встал на закачки, а далее естественным образом родилась мысль, что если уж в сети постоянно висит компьютер, то можно попробовать замутить свой личный хостинг и сделать сайт. И все будет бесплатно.

Так возникла идея сделать этот сайт. Его содержание - дело вторичное, не судите строго. Цель была сделать.

По этой ссылке есть отличная статья о том, как это делать. Замечу только, что для самого простого сайта-визитки будет достаточно одного Apache. Все прочее потребуется только если Вы будете делать что-то интерактивное.

Итак, WEB-сервер запущен, нужен собственно сайт. Вообще, если Вы не профессионал, то изучать HTML ради одного раза смысла нет совсем. (Хотя небольшие познания здорово помогают, поверьте)  Поэтому качаем какой-нибудь HTML-редактор. Можно сделать сайт прямо в Worde (сохранить документ как web-страница), но я не советую. Файл получится очень объемный. В десятки раз больше чем нужно. Я пользуюсь Nvu. Это первое что попалось под руку, не буду утверждать, что лучшее, но меня устраивает.

Теперь, когда сайт готов, надо выложить его в сеть. Вот тут самое хитрое. Скорее всего, у Вас, как и у почти всех, динамический ip-адрес. Т.е. он периодически меняется по прихоти провайдера, и ничего Вы с этим не сделаете.

На этот случай в сети существует много сервисов поддержки динамических DNS. Нас интересуют прежде всего бесплатные. Я использовал no-ip.com .

Заходим, регистрируемся. Бесплатно можно иметь три доменных имени второго уровня. Выбираем из скучного списка первый уровень и добавляем свое имя. У меня получилось viktand.zapto.org . Там же скачиваем и устанавливаем клиента, который будет постоянно отслеживать Ваш ip-адрес и обновлять его в базах данных DNS.  

В принципе, уже будет работать, но адрес у сайта уж больно кривой. Чтобы было солидно, идем к регистраторам. Например, reg.ru . Или еще куда. Это вопрос вкуса и денег. Итак, покупаем (по сути арендуем) доменное имя первого уровня. У меня получилось viktand.ru . Теперь надо как-то связать свой динамический адрес и это имя. В принципе некоторые регистраторы предоставляют такие услуги, но часто просят денег за это. А денег нам жалко. No-ip позволяет привязывать домены пользователей к динамическим адресам, но только в небольшом диапазоне. (надо было брать имя .com или .org или еще несколько вариантов).    

Т.к. no-ip зону .ru не поддерживает, то идем на Yandex. Если ящика там еще нет, то регистрируемся и заходим на страницу добавления доменов . Здесь нужно делегировать свой домен Яндексу, т.е. поручить его DNS –серверам перенаправлять запросы куда надо.

Там все подробно расписано. Замечу только, что проще всего подтверждать, что домен Ваш, а не чужой, по третьему способу, т.е. временно заменив адрес своего почтового ящика у регистратора домена. Подтверждение – процесс долгий. Я ждал часов восемь (успел сходить на день рождения). Добавление: Не менее просто подтвердить владение доменом, разместив в корне, т.е. в папке www, файл с рекомендованным именем и содержанием.

После этого надо настроить DNS запись. Переходим там же по ссылке Редактор DNS и добавляем новую запись:      

 Хост – “WWW”  (можно написать "@". Будет работать даже лучше, но Яндекс будет ругаться и почта (см. ниже) не будет работать)

тип – “CNAME

значение записи – Ваше имя сайта в no-ip, т.е. в моем случае это было viktand.zapto.org

Как недостаток, сайт доступен только с www. Т.е. по короткому имени viktand.ru доступа не будет. Для этого надо настраивать А-запись, но там требуется указать ip, а он у нас динамический. Как это победить я пока не решил. Писать клиента под API Яндекса, чтобы автоматически обновлять ДНС-записи просто лень, а это был бы лучший вариант. С другой стороны, с точки зрения "правильного" Интернета, применение www. в имени сайта очень желательно. Это гарантирует правильную обработку запросов.

Нажимаем кнопку «Добавить DNS запись» и ВСЕ! Теперь Ваш сайт доступен по нормальному имени (по ненормальному тоже).  Но есть один нюанс. Изменения будут действовать после окончания времени TTL. У Яндекса по умолчанию это 6 часов. Поэтому открывем на той же  странице "Редактировать SOA" запись и ставим TTL  900, т.е. 15 минут. Меньше нельзя. 

И еще, в первые же сутки эта запись CNAME у меня исчезла. Соответственно сайт стал недоступен. Надеюсь этот глюк не повторится, но если Ваш сайт вдруг  перестанет открываться и отвечать на пинги, то проверьте эту запись. Как потом оказалось, Яндекс сбрасывает настройки, если находит ошибки в них (как он думает). Даже если все работает.

Небольшой коментарий про настройки Apache. Среди прочего Вам придется создавать виртуальные сервера, т.е. писать в текстовом файле httpd-vhosts.conf  что-то типа ссылки на папку с файлами сайта. Например так:

<VirtualHost *:80>
              DocumentRoot "C:/apache/viktand.ru/www"
              ServerName viktand.ru
              ServerAlias www.viktand.ru
              ErrorLog "C:/apache/viktand.ru/error.log"
              CustomLog "C:/apache/viktand.ru/access.log" common
        </VirtualHost>

Этот пример абсолютно реальный. Как видите здесь упоминается имя сайта превого уровня, хотя no-ip ссылается на имя второго уровня. Соответственно существует и папка с файлами viktand.ru, где хранится все, что относится к сайту. Витруальный сервер viktand.zapto.org тоже полноценно создан, но его существование после запуска нормального имени не обязательно. 

Ну и в конце пару слов о железе. Упомянутый в начале нетбук часто бывал нужен где-то еще, поэтому приходилось отключать его. Поэтому сейчас WEB-сервер крутится на неттопе DNS-porto . Там же качается из Интернета все «тяжелое». Он висит на стене за телевизором и при необходимости крутит по HDMI фильмы и мультики. С домашним роутером связан по Wi-Fi. В роутере имеется настройка всегда присваивать неттопу один и тот же локальный адрес и открыт проброс 80 порта в его направлении. Вот и все.

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

Скоро расскажу как прикрутить форум к своему сайту. 

P.S. В качестве приятного бонуса от сотрудничества с Яндексом Вы получаете возможность иметь почтовый ящик в своем домене. Я, например, сделал себе ящик i@viktand.ru с доступом по адресу mail.viktand.ru. Можете писать письма. Кроме того вы можете создать там же ящики своим друзьям. На самом деле они будут на Яндексе, но это уже детали.

 

DNS-PortoВ такой коробочке живет этот сайт (и еще парочка)
DNS-Porto 0146128 AMD Zacate E450 (1.65GHz), HD6320, 2Gb, 320GB, Wi-Fi, BT, HDMI, D-sub
Несколько ссылок, чтобы не искать, если кто-то вдруг захочет повторить:
Все для WEB-сервера
HTML-редактор

Комментировать:
Ваше имя:


Viktand®