Установка IIS 7.0 и основы администрированияИсточник: info-comp info-comp
Продолжаем изучать web сервера и сегодня мы рассмотрим установку и основные настройки Internet Information Services (IIS) версии 7.0 на платформе Windows Server 2008. А также научимся привязывать такие отдельные технологии как PHP к нашему web серверу. Как вы знаете, что PHP отлично работает с apache и MySql, но вдруг у вас возникла необходимость использовать именно IIS в связке с PHP то тогда данная статья именно для вас. Сегодня мы рассмотрим основы IIS 7.0, научимся устанавливать данный web сервер и привязывать к нему PHP. Мы будем рассматривать IIS 7 версии но не расстраивайтесь если у вас, например, стоит Windows Servre 2008 r2 где устанавливается IIS версии 7.5 он мало отличается от 7 версии. Для начала давайте немного поговорим об архитектуре IIS 7.0. Данный Web-сервер полностью построен на модульной основе, т.е. в отличие от IIS 6.0 который просто устанавливался как роль сервера и все. В IIS 7 более гибко можно настроить свой веб сервер, путем установки только необходимый модулей, которые вам нужны. Это огромный плюс так как:
Установка Web-Сервера IIS 7.0 на Windows Server 2008 Перед установкой хочу дать небольшой совет, устанавливайте данную роль сервера на полностью "голый" сервер, т.е. помимо службы IIS там ничего недолжно быть установлено (имеется в виду из ролей сервера) исключением может быть только DNS сервер. Существует даже отдельная редакция Windows server 2008 Web Server которая полностью ориентирована именно на Web сервер, кстати, она намного дешевле других редакций этой операционной системы. Существует несколько вариантов установки данной роли в Windows:
Ну, теперь давайте перейдем непосредственно к самой установки этого сервера. Предполагается, что у вас уже установлена операционная система Windows Server 2008. Нажимаем Пуск->Администрирование->Диспетчер сервера->переходим на пункт роли и жмем "добавить роли" Затем нажимаем "далее" а на следующем шаге выберите Веб-сервер (IIS). На следующем шаге просто жмите "далее" а вот на следующем шаге приостановитесь и задумайтесь. Какие именно компоненты (модули) вам нужны, если все оставить по умолчанию, то вы сможете, обрабатывать только статический контент и вообще у вас будет доступно мало функций в вашем сервере. Но все равно, все ставить не нужно выберите только то, что вам необходимо в моем случае мы будем прикручивать PHP и для поддержки этого нужно выбрать пункт CGI, а если вы вдруг используете asp.net то выбирайте соответствующие пункты, да и вообще почитайте что там есть еще (описание располагается справа), чтобы потом не удивляться, "почему у меня нет этого и не работает вот это". Жмите далее. А теперь жмем установить. Ждем несколько минут, и после того как мастер добавления ролей сказал что "Установка прошла успешно" жмем закрыть. И сразу же можем проверить работоспособность нашего web сервер, путем простого открытия браузера и набора в адресной строке http://localhost и если у вас появилась следующая картинка, то ваш сервер работает! Для управления web сервером используется графический интерфейс, но сразу могу сказать, что управлять можно также и напрямую редактировав xml файлы. Все настройки web сервера IIS7 хранятся в виде xml файлов. Настройки сразу для всего сервера IIS (сразу для всех сайтов) хранятся в файле applicationHost.config который располагается по следующему пути: Но для конфигурации отдельного сайта можно использовать файл web.config он создастся автоматически при изменение любой настройки применительно к одному сайту. Мне такая схема напомнила конфигурирование web сервера Apache, где для конфигурации отдельно взятого сайта можно использовать файл .htaccess. Кстати по умолчанию корневая директория вашего web сервера располагается по адресу: C:\inetpub в которой и располагаются все ваши сайты, когда вы открыли сайт по умолчанию то у вас открылись файлы из папки wwwroot. Перейдем непосредственно в нашу графическую панель управления web сервером IIS 7, для этого откройте Пуск->Администрирование->Диспетчер служб IIS . И у вас откроется, вот тая панель: Где слева будет дерево ваших сайтов (у нас пока только сайт по умолчанию) и приложений, по центру группировка все настроек, а справа свойства той или иной настройки. Теперь нам необходимо установить PHP для этого скачать дистрибутив php с официального сайта (http://windows.php.net/download/) в виде msi пакета (нажав на ссылку installer) я скачал версию php-5.3.10-nts-Win32-VC9-x86.msi но вы можете скачать версию и поновей. Перейдем к установке PHP, вообще проблем возникнуть не должно, только на одном окне выберите обязательно следующий пункт: IIS Fast CGI После этого давайте создадим новый сайт (в IIS это будет узел) щелкнем правой кнопкой по пункту "узлы" и нажмем "добавить веб-узел". Заполняем как на картинке, локальную директорию для нового сайта я создал в папке C:\inetpub\my но вы можете создать ее хоть на другом диске. И если у вас будет не один сайт, то у вас возникнет необходимость отделять их друг от друга. Существует несколько способов, первый например, посадить их на разные порты, но в некоторых случаях это не удобно. У сайта по умолчанию он 80, а у нового сайта 8080, но если у вас будет много сайтов и вы хотите чтобы они работали на одном порту, скажем 80 то вам необходимо заполнять поле "имя узла" другими словами это домен сайта, но после того как вы указали здесь, например как я mysite. Вам необходимо сделать соответствующею запись на DNS сервере или, если у вас мало компов и просто нет DNS сервера или вы просто разработчик то пропишите это соответствие в файле hosts (например, 10.10.10.2 mysite) Теперь создайте в папке нового сайта (C:\inetpub\my) файл например, index.php c таким содержимом <?PHP phpinfo(); ?> С помощью этой простой функции на языке php можно узнать настройки самого php установленного на этом сервере, если вы увидите страничку с указанием версии php, которая указанна чуть ниже, то у вас все работает. Как вы заметили никаких специальных действий на сервере IIS 7 для привязки php мы не делали (за исключением, что мы при установке добавили компонент CGI), за нас это сделал сам дистрибутив php и сервер iis. Теперь рассмотрим пару настроек сервера IIS 7 например мы хотим чтобы у нас на одном сайте по умолчанию открывался документ mydoc.php для этого перейдите на нужный сайт и откройте настройки "Документ по умолчанию" и добавьте нужный вам документ, причем можете задать несколько документов задав им необходимый приоритет. И после этого вы сразу же увидите, что в вашей папке с новым сайтом Mysite появился файл web.config (как я раньше и говорил). Для того чтобы проверить, что вы сделали все правильно создайте файл mydoc.php с любым содержимом, и откройте в браузере адрес вашего сайта, и по умолчанию должен загрузится этот документ. Еще хочу обратить ваше внимание на то, что если вы где-нибудь прочитали или вам кто-то подсказал какую-нибудь настройку на сервере IIS, а вы ее не можете найти в панели, то скорей всего у вас не установлен необходимый для этого модуль, так как настройки появляются в соответствие с установленными модулями. Например, вы хотите настроить на вашем сайте Basic аутентификацию, но в данный момент вы не можете найти эту настройку на сервере, для этого вам необходимо до установить нужный компонент. Открываем диспетчер сервера Роли->веб-сервер(IIS)->добавить службы ролей и выбираем "Обычная проверка подлинности" или по англ. Basic authentication Открываем заново "Диспетчер служб IIS" и мы замечаем, что в пункте "Проверка подлинности у нас появился еще один пункт "Обычная проверка подлинности". Для того чтобы ее включить вам необходимо отключить "анонимная проверка подлинности" и соответственно включить "Обычная проверка подлинности". Не забудьте создать пользователей в данном случае "локальных пользователей" Диспетчер сервера->конфигурация->локальные пользователи щелкаем правой кнопкой мыши "создать пользователя" я создал пользователя test. Теперь при обращении на наш сайт будет появляться форма для аутентификации Вводите своего пользователя и если вы все сделали правильно, то вы опять попадете на свой сайт! Теперь поговорим о самой любимой связке это PHP+MySql. Для того чтобы добавить поддержку MySql достаточно просто установить эту СУБД (подробная установка рассматривается в статье - Установка сервера MySql и Средства его управления и администрирования) и все! Можете создавать сайты в связке IIS 7+PHP+MySql. Я думаю для основы этого в полнее достаточно, если возникают вопросы, пишите в комментариях, постараюсь помочь. Удачи! |