Чтобы сайт заработал, нужно:
- Статический сайт = Доменное имя (домен) + Хостинг + HTML-файлы.
- Динамический сайт = Доменное имя (домен) + Хостинг + Серверный язык (PHP, Ruby) + БД (MySQL) + CMS (движок сайта) + наполнение данными.
## Статический сайт
**Статический сайт** - сайт, состоящий из статичных HTML (HTM, DHTML, XHTML) страниц, составляющих единое целое.  
- Достоинства: 
	- Не нужно знать языки web-программирования.
	- Хорошая кэшируемость страницы.
	- Быстрая скорость загрузки страниц.
	- Минимальные требования к web-серверу и минимальная нагрузка на него.
	- Простота переноса на другой сервер или локальный компьютер.
- Недостатки
	- Невозможность динамической генерации содержимого.
	- Для наполнения сайта информацией необходимо получать доступ к файлам-страницам посредством FTP.
	- Сложность обслуживания.
  
Статический сайт используется для:
- Сайтов-визиток (Общая информация о компании и т. д.)
- Каталогов продукции (Подробное описание товаров/услуг)
- Домашних страниц пользователей
- Шаблонов динамических сайтов
## Динамический сайт
**Динамический сайт** - сайт, страницы которого формируются из шаблона-страницы и отдельно расположенного содержимого (информации, скриптов и др.) динамично по запросу.  
Генерация содержимого:
- Генерация содержимого на стороне сервера - сервер получает запрос от клиента и запускает обработку файла-скрипта серверным языком. Именно на этой стадии происходит выборка необходимой информации из баз данных и наполнение ею страницы
- Передача сгенерированной странички клиенту
- Генерация содержимого на стороне клиента - после того, как страница получена клиентом с сервера, программа-браузер обрабатывает её и отображает пользователю, при этом исполняя скрипты клиентской стороны. Очень часто клиентский язык – JavaScript
  
**Комбинированная генерация** - чаще всего в жизни встречается именно комбинация этих двух методов генерации. Т. е. поочерёдно происходит генерация на стороне клиента и сервера.  
- Достоинства: 
	- Относительно простое обслуживание сайта
	- Широкие функциональные возможности (форумы, чаты, комментарии)
- Недостатки: 
	- Высокие требования к хостингу
	- Высокая стоимость разработки
## Домен
**Доменное имя (домен)** - символьное имя, служащее для идентификации расположения сайта.  
Например: `wikipedia.org`:
- `wikipedia` – доменное имя
- `org` – домен верхнего уровня
- `.` – разделитель
  
Бесплатно получить можно, в основном, только доменное имя 3-го уровня. Например: `vasya.narod.ru` или `vasya.ucoz.ru`. Купить доменное имя 2-го уровня можно у регистраторов доменов. Средняя цена на домен в зоне .ru – 600 руб/год.  
## Хостинг
Хостинг - услуга по предоставлению вычислительных мощностей для физического размещения информации на сервере, постоянно находящемся в сети.  
У хостинга большое количество параметров:
- Размер дискового пространства.
- FTP-доступ.
- Электронная почта вида `имя@имя_сайта.ru`
- Поддержка серверных языков (PHP, Rybu).
  
От набора параметров зависит и цена, от бесплатного, до 5000-10000 руб/год.
## Языки
Серверные языки:
- PHP
- Perl
- Python
- Ruby
- Технология ASP.NET
- Java
- и т. д.
  
Клиентские языки:
- JavaScript
- VBScript
- ActionScript
- AJAX
- Microsoft Silverlight
## CMS
**Система управления содержимым (CMS)** - информационная система или компьютерная программа, используемая для обеспечения и организации совместного процесса создания, редактирования и управления контентом.  
![CMS](../Pictures/10_01.%20CMS.png)  
Основные функции CMS:
- Предоставление инструментов для создания содержимого, организация совместной работы над содержимым
- Управление содержимым
- Публикация содержимого
  
Существуют бесплатные и платные CMS. Наиболее популярные:
- Бесплатные:
	- Drupal
	- Joomla
	- WordPress
- Платные:
	- 1C-Битрикс
	- WebDirector
## Пример публикации статического сайта
1. Заходим на сайт http://narod.yandex.ru  
	![Яндекс.Народ](../Pictures/10_02.%20Яндекс.Народ.png)
2. Нажимаем кнопку "Создать сайт"  
	![Кнопка создать сайт](../Pictures/10_03.%20Кнопка%20Создать%20сайт.png)
3. Выбираем параметры сайта  
	![Параметры сайта](../Pictures/10_04.%20Параметры%20сайта.png)
4. После этого у нас появился хостинг, на который можно загрузить свои HTML-файлы или продолжить создавать сайт с помощью визуального конструктора Яндекса
5. Заходим в любую программу для передачи файлов по FTP
6. Вводим строку подключения: example.ftp.narod.ru, логин и пароль от Яндекса
7. Подключаемся к хостингу и скидываем туда наши HTML-файлы  
	![Загрузка HTML-файлов](../Pictures/10_05.%20Загрузка%20HTML-файлов.png)
8. Через несколько часов наш сайт будет доступен по адресу: http://example.narod.ru/
