В недрах вашего Microsoft Server (версии 2008, 2008 R2 и 2012) глубоко скрыт самый мощный веб-сервер. Он просто ждет, чтобы вы раскрыли весь его потенциал. Является ли вашей целью запуск сайта WordPress из дома или развертывание и управление крупномасштабной, высокодоступной веб-фермой для вашей компании, IIS справится с этой задачей.
Чтобы начать работу с IIS, необходимо иметь «практический» сервер. Он должен быть таким, чтобы вы могли снова и снова нагружать его, не заботясь о последствиях. Он должен располагаться в собственной сети, надежно изолированной от производственной среды. Вы можете использовать Windows 8 на ноутбуке, но учтите возможность использования виртуальной машины (virtual machine, VM) для тестирования. Используйте Hyper-V или даже простую VM на платформе Windows Azure.
В этой и последующих статьях я буду использовать Windows Server 2012 с IIS 8. Вы также можете использовать Windows 2008 или 2008 R2 (попутно я буду указывать на важные различия в них). Вы должны создать VM в качестве контроллера домена с DNS. Также на вашей VM должна быть установлена Windows PowerShell версии 3. Если вы еще не использовали Windows PowerShell, самое время заняться этим.
Быстрая установка
IIS прост в установке, если использовать графическое приложение Server Manager. Выберите роль Web Server и пока не добавляйте никакие дополнительные функции (я рассмотрю их позже). В производственной среде по соображениям безопасности вы не должны добавлять ничего сверх того, что вам нужно. Сейчас вам достаточно минимальной установки IIS.
Если вы хотите ускорить процесс и использовать Windows PowerShell, откройте административную консоль Windows PowerShell и введите:
PS C:\> Install-WindowsFeature –Name веб-Server
–IncludeManagementTools
Теперь обсудим изменения, которые произойдут с сервером после установки. Когда IIS установлен, появляется ряд дополнений к серверу. При работе с IIS необходимо знать пять основных изменений.
1. | Первое, к чему обращается большинство пользователей, — IIS Manager. Это графический инструмент, устанавливаемый в каталог Administrative Tools. С ним вы проведете немало времени, поэтому полезно запустить его. После запуска в IIS Manager в его левой части отображается навигационная панель с выбранной начальной страницей, а также информационное окно (рис. 1). |
The navigation pane with the Start Page selected | Навигационная панель с выбранной начальной страницей |
List of recently managed Web servers, local and remote. | Список управляемых в данный момент веб-серверов, локальных и удаленных. |
Different connection methods to connect and manage a Web server, site or application. | Различные способы соединения для подключения и управления веб-сервером, сайтом или приложением. |
Get the latest news from a variety of online resources. | Получить последние новости из различных интернет-ресурсов. |
Рис. 1. Начальная страница IIS Manager
| При выборе другого узла навигации, такого как ваш сервер, пул приложений или контейнер сайтов, инструмент изменяет свое представление и разделяется на три панели. Левая панель предназначена для подключений (Connections), центральная панель — для просмотра свойств и контента (Features View и Content View), а правая панель содержит действия (Actions) (рис. 2). Подробно исследуйте IIS Manager, но пока не вносите никаких изменений. |
The navigational location of your Default Web Site container plus additional Web sites you create in the future. | Навигационное расположение вашего контейнера веб-сайтов по умолчанию плюс дополнительные веб-сайты, которые вы создадите в будущем. |
Feature settings to manage your Web site and Web server. This list increases as new components are added. | Настройки свойств для управления веб-сайтом и веб-сервером. Этот список растет по мере добавления новых компонентов. |
The Actions pane contains quick access to many management tasks. | Панель действий обеспечивает быстрый доступ ко многим задачам управления. |
Рис. 2. Используйте Internet Information Services (IIS) Manager для управления сервером или веб-сайтом
2. | В вашу файловую систему вносятся изменения для поддержки веб-сайта по умолчанию и других потребностей хранилищ IIS, например, файлов журналов и настраиваемых сообщений об ошибках. При установке создается новый путь на основном диске: C:\inetpub (рис. 3). |
C:\inetpub is created during the installation. | C:\inetpub создается во время установки. |
Log files and customizable error pages are located here. | Файлы журналов и настраиваемые страницы ошибок располагаются здесь. |
This is the location of the Web site files for the Default Web Site. | Здесь располагаются файлы для веб-сайта по умолчанию. |
Рис. 3. После установки IIS в файловой системе появляется несколько дополнений
| Вы не обязаны использовать это местоположение, когда создаете дополнительные веб-сайты. На самом деле, обычно не рекомендуется его использовать. Однако вы должны знать об этих каталогах, чтобы модифицировать веб-сайт по умолчанию и контролировать файлы журналов. |
3. | Добавляется три новые службы, которые работают под управлением IIS. Вы найдете их в Services Manager в разделе Administrative Tools или с помощью командлета Windows PowerShell Get-Service: - AppHostSvc: Application Host Helper Service (служба поддержки узла приложений)
- W3SVC: World Wide Web Publishing Service (служба веб-публикаций)
- WAS: Windows Process Activation Service (служба активации Windows)
Эти службы играют огромную роль в понимании того, как работает IIS. Пока вам достаточно убедиться, что они работают. Для этого используйте следующую команду Windows PowerShell: |
PS C:\> Get-Service –Name AppHostSVC, W3SVC, WAS
4. | Устанавливается новый модуль Windows PowerShell с именем WebAdministration, который содержит командлет для веб-управления. Проверить наличие этого модуля можно, введя: |
PS C:\> Get-Module -ListAvailable
| Этот модуль динамически загружается в Windows PowerShell версии 3, когда вы вводите командлет. Иногда вам придется загружать этот модуль вручную, особенно, при удаленном управлении. Например: |
PS C:\> Import-Module –Name WebAdministration
| Вы можете получить список командлетов веб-управления для этого модуля с помощью Get-Help или Get-Command: |
PS C:\> Get-Help *Web*
PS C:\> Get-Command –Module WebAdministration
5. | Как бы ни загружался модуль WebAdministration — вручную или динамически — это приводит к запуску нового провайдера Windows PowerShell. При этом создается новый диск файловой системы с именем IIS. Вы будете использовать это для административных задач и для получения информации о своих веб-сайтах, поэтому должны импортировать модуль WebAdministration модуля и проверить наличие нового диска: |
PS C:\> Get-ChildItem -Path IIS:
Просмотр веб-сайта по умолчанию
Рассматривайте веб-сервер и расположенные в нем сайты как обычный файловый сервер с сетевыми общими ресурсами. С помощью файлового сервера вы открываете каталог для доступа извне файловой системы и назначаете ему общее имя и разрешения пользователей к его файлам. Когда пользователь хочет открыть или использовать один из файлов, он может ввести UNC (\\ИмяКомпьютера\ИмяОбщегоРесурса) в такое приложение, как Проводник, и открыть файлы.
Веб-сервер работает так же. Вы создаете каталог в файловой системе, добавляете в него файлы (веб-страницы) и создаете веб-сайт для публикации этих страниц всему миру. Веб-сайт получает свое «публичное имя» из так называемой «привязки», которая настраивается для этого веб-сайта.
В процессе установки IIS для вас создается веб-сайт по умолчанию. Также создается новый каталог C:\inetpub\wwwroot и добавляется несколько основных файлов (веб-страницы). веб-сайт с именем «Default Web Site» создается с привязкой «*:80 (http)». Это означает, что любой HTTP-запрос в порт 80 будет передаваться веб-сайту по умолчанию. Вы можете просмотреть эту информацию в IIS Manager. Для этого также можно использовать Windows PowerShell (рис. 4).
Рис. 4. Просмотр настроек веб-сайта по умолчанию
С помощью Windows PowerShell просмотреть информацию о веб-сайте по умолчанию — и любом другом веб-сайте — можно двумя способами: используя командлет Get-Website и метод IIS: провайдер:
PS C:\> Get-Website –Name 'Default Web Site'
PS C:\> Get-Childitem –Path IIS:\Sites
Метод IIS: провайдер предпочтительнее, потому что также позволяет получить краткий список всех файлов и дополнительных компонентов веб-сайта при добавлении имени веб-сайта к пути:
PS C:\>Get-ChildItem –Path
'IIS:\Sites\Default web site'
Тестирование веб-сайта по умолчанию
Веб-сайт по умолчанию полезен с точки зрения тестирования, поэтому не удаляйте его. Он отлично подходит для проверки, что веб-сервер работает и принимает HTTP-запросы. Чтобы протестировать веб-сайт по умолчанию, откройте браузер и введите имя сайта. В данном случае все запросы привязываются к порту 80, поэтому URL выглядит так:
HTTP://<ServerName>:80
Поскольку в вашем браузере порт 80 задан по умолчанию, вам не нужно вводить его — однако его ввод помогает вам увидеть, что URL содержит имя сервера и общее имя (привязка веб-сайта), подобно UNC.
Быть может, вы хотите заменить веб-страницу по умолчанию на что-то еще? Откройте Блокнот, введите «TechNet Rocks!» и сохраните файл под именем Default.htm в каталог C:\inetpub\wwwroot. Также можно попробовать сделать это с помощью Windows PowerShell:
PS C:\> Add-Content
–Path C:\inetpub\wwwroot\Default.htm
-Value "TechNet Rocks!"
Откройте браузер и введите URL веб-сайта по умолчанию, либо используйте Windows PowerShell:
PS C:\> Start iexplore http://<servername>
Теперь у вас есть своя веб-страница на собственном веб-сервере. Вероятно, у вас возникнет много вопросов: «Могу ли я переместить веб-сайт по умолчанию? Как создавать собственные веб-сайты? Как настроить DNS для своего веб-сайта?» На все эти и многие другие вопросы я отвечу в следующих статьях про IIS.