Содержание
Обычно, когда говорят о web-сервере, подразумевают решения на базе платформы Linux. Но если ваша инфраструктура развернута на основе Windows Server то логично будет использовать веб-сервер IIS. Вопреки распространенному мнению, это весьма популярная платформа, которая позволяет работать как с большинством популярных CMS, так и имеет широкий спектр систем, предназначенных для работы именно на Windows и IIS.
Несомненным достоинством IIS является его тесная интеграция с другими технологиями и средствами разработки Microsoft. В частности веб-решения для IIS могут использовать богатые возможности .NET и легко взаимодействовать с настольными приложениями на этой платформе. Если же вас это пока не интересует, то к вашим услугам богатый выбор готовых CMS, в том числе написанных специально для IIS. Сегодня мы рассмотрим как установить и настроить IIS для работы с веб-решениями на базе ASP.NET и установим одну из популярных CMS для этой платформы.
Для установки веб-сервера на платформе Windows перейдем в оснастку Роли в Диспетчере сервера и выберем установку ролей Веб-сервер (IIS) и Сервер приложений.Но не спешите нажимать Далее, слева, под названием каждой роли, доступна опция Службы ролей, перейдем на нее и установим для Сервера приложений следующие опции: Поддержка веб-сервера (IIS), Общий доступ к TCP-портам и Активация через HTTP.А для веб-сервера установите службу FTP-сервер.После чего установите выбранные роли. Для проверки работоспособности IIS наберите в браузере IP-адрес вашего сервера, вы должны будете увидеть стандартную страницу-заглушку веб-сервера.Теперь перейдем в к настройке сервера, для этого откроем Диспетчер служб IIS (находится в Пуск — Администрирование).Первым делом создадим новый сайт, для этого щелкните правой кнопке на пункте Сайты в боковом меню Диспетчера IIS и выберите Создать новый сайт.В открывшемся окне укажите имя сайта, путь к корневой папке (по умолчанию сайты пользователей располагаются в C:inetpubwwwroot), которую следует предварительно создать и укажите имя узла (доменное имя сайта), в нашем случае iissite.localНе забудьте добавить A-запись с именем вашего сайта на DNS-сервер или пропишите необходимые строки в файлы hosts тех рабочих станций, откуда будете обращаться к сайтуВ принципе вы уже можете размещать в папке сайта web-страницы и получать к ним доступ через браузер, но для полноценной работы с сайтом не помешает FTP-доступ к нему. Для этого щелкните правой кнопкой по названию вашего сайте в боковом меню и выберите Добавить FTP-публикациюДалее укажите привязку FTP-cлужбы к сетевым интерфейсам и портам, а также настройте параметры безопасности. Если вы собираетесь использовать SSL, то учтите что вам потребуется сертификат, хотя если вы будете использовать FTP-доступ только для собственных нужд, то можно обойтись самоподписанным сертификатом. Не забудьте поставить галочку для автоматического запуска FTP-сайта.На следующей странице укажите параметры доступа к серверу, мы советуем указывать конкретных пользователей, которые будут работать с данным сайтом.Попробуйте подключиться через FTP используя любой клиент и загрузите проверочную html страницу с именем index.html, пример такой страницы мы приводили здесь. Если все сделано правильно, то, набрав в браузере имя нашего сайта, вы увидите такую страницу: Веб-сервер настроен и вы можете использовать его для размещения HTML-страниц, однако современные сайты используют для хранения своих данных СУБД, поэтому следующим шагом установим MS SQL Express 2012, возможностей которого с лихвой хватит для наших задач. Установка производится со значениями по умолчанию, кроме Режима проверки подлинности, который следует переключить в Смешанный режим и задать пароль суперпользователю SQL-сервера sa.Теперь попробуем установить какую либо популярную CMS созданную на базе технологии ASP.NET, обширный выбор таких решений представлен в галерее web-приложений Microsoft. Обратите внимание, что по кнопке скачать вы получите пакет для установки через Web PI, для установки на IIS вам потребуется перейти на сайт разработчика и скачать полный пакет с CMSМы будем устанавливать Orchard CMS, для получения пакета пройдите по ссылке и выберите Загрузить как zip, распакуйте полученный архив и закачайте в корень сайта содержимое папки Orchard.Данная CMS создана на базе ASP.NET 4, поэтому настроим наш сайт на использование необходимых технологий. Для этого щелкните правой кнопкой на имени сайта в боковом меню и выберите Управление веб-сайтом — Дополнительные параметрыВ открывшемся окне измените параметр Пул приложений, указав там ASP.NET v.4Затем установите необходимые права на папку с сайтом, вам нужно добавить пользователю IIS_IUSRS возможность записи и изменения содержимого данной папки.Также не забудьте создать базу данных для сайта, для этого зайдите в SQL Server Management Studio и, щелкнув правой кнопкой на пункте Базы данных в боковом меню, создайте новую базу.Для установки CMS наберите в браузере адрес сайта и следуйте указаниям скрипта установки. Никаких сложностей там нет, единственное затруднение может вызвать правильное указание параметров подключения к SQL-серверу. Укажите что вы используете SQL Server (или SQL Express)В строке подключения ниже укажите следующее:
server=SERVERNAMESQLEXPRESS;database=iissite;user=sa;password=sapasswd;
где:
- server=SERVERNAMESQLEXPRESS — имя сервера, на котором установлен SQL-сервер, и экземпляра SQL-сервера.
- database=iissite — имя базы данных (в нашем случае iissite)
- user=sa — пользователь СУБД (в нашем случае sa)
- password=sapasswd — пароль пользователя sa.
Так как наш сайт предназначен для внутреннего использования и использует изолированный экземпляр SQL, то мы использовали для доступа к серверу параметры пользователя sa, если же вы собираетесь размещать на веб-сервере несколько сайтов и администрировать их будут разные пользователи, то заведите на SQL сервере дополнительных пользователей и для подключения используйте их учетные данные, не забыв ограничить им доступ только к «своим» базам.Спустя некоторое время, необходимое для установки CMS, в вашем браузере отобразиться страница сайта с тестовым содержимым. Можете переходить в админ-панель и настраивать сайт согласно ваших потребностей.Несмотря на то, что мы рассмотрели установку только одного «движка», установка других CMS производится аналогичным образом и сложностей вызвать не должнаВ следующей части нашей статьи мы расскажем как добавить нашему серверу поддержку PHP для запуска на нем популярных CMS написанных на этом языке.Дополнительные материалы:
- Windows Server. Настраиваем веб-сервер IIS.
- Windows Server. Добавляем поддержку PHP веб-серверу IIS.
- Windows Server. Веб-сервер IIS, добавляем поддержку MySQL.
IIS с поддержкой PHP (FastCGI)Windows 7 + IIS + PHP + MySQL + Maxsite = Реально
Привет. Давайте установим ISS. А для начала узнаем что такое IIS?
IIS (Internet Information Services, до версии 5.1 — Internet Information Server) — проприетарный набор серверов для нескольких служб Интернета от компании Майкрософт. IIS распространяется с операционными системами семейства Windows NT.
Основным компонентом IIS является веб-сервер, который позволяет размещать в Интернете сайты. IIS поддерживает протоколы HTTP, HTTPS, FTP, POP3, SMTP, NNTP.
Подробнее755
Отлично. Теперь мы знаем что мы будем ставить . Приступим.
Установка
Первым делом идем в главное меню «Пуск» (Start) далее
Панель управления -> Программы -> Включение или отключение компонентов Windows.
Находим в списке «Службы IIS» и выбираем нужные компоненты
Где-то рекомендовалось следующее:
- Безопасность. Все компоненты кроме «Проверка подлинности с сопоставлением сертификата …».
- Компоненты разработки приложений. Для PHP нужна компонента CGI.
- Общие функции HTTP. Отмечаем все пункты.
- Проверка работоспособности и диагностика. Выбираем «Ведение журнала HTTP» и «Монитор запросов».
- Функции повышения быстродействия. Отмечаем все пункты.
- Средства управления веб-сайтом. Отмечаем только «Консоль управления IIS».
Лично я немного отступил от этого описания и добавил FTP, так как мне для моих нужд потребуется тестировать работу с FTP.
После того как были выбраны нужные пункты, нажимаем «Ок» и остается подождать когда установятся требующиеся нам компоненты. после чего можно перезагрузить машину. это ей не помешает для старта всех требующихся сервисов.
все. Можно сказать что наш ISS Сервер установлен. Перейдем к его начальному конфигурированию .
Конфигурирование
Идем в управление компьютером (правой кнопкой мыши по значку «Компьютер» -> Управление), далее «Службы и приложения» -> «Диспетчер служб IIS» или счастливые обладатели Windows 7 могут пойти по другому «Пуск» и в поле «Найти программы и файлы» ввести «IIS» и в списке отобразится заветная «Диспетчер служб IIS»
Идем в сайты. Сайт по умолчанию я удалил сразу, решив что он мне не нужен и для наглядности я создам новый .
Правой кнопкой мыши по «сайтам» -> «Добавить web сайт»
и создаем наш первый сайт
Обратите внимание «localhost» был выбран не случайно. Так как именно эта директива является «по умолчанию» имеет локальный адрес 127.0.0.1 и имя прописанное в файле hosts lcalhost. подробнее советую почитать на википедии localhost437 и hosts310
В папке указанной как «физический путь», находятся файлы нашего сайта, которые были положены IIS в качестве демонстрационного примера 2 файла это iisstart.htm и welcome.png
После чего нажимаем «Ок».
Уже можно запустить браузер и перейти по адресу http://localhost/ и мы увидим приветствие ISS.
ISS Установлен и настроен!
Если Вы хотите чтобы ваш сайт откликался локально на другое имя, то вместо «localhost» нужно указать свое имя и завести его на DNS сервере или в файле hosts.
Содержание:
Установка веб-сервера IIS
Открываем Панель управления -> Программы -> Включение или отключение компонентов Windows. Находим в списке раздел Службы IIS. Раскрываем его и выбираем нужные компоненты:
Базовый набор:
- Безопасность. Выбираем все компоненты кроме “Проверка подлинности с сопоставлением сертификата …”.
- Компоненты разработки приложений. Мне нужна только компонента CGI, для последующей установки PHP.
- Общие функции HTTP. Отмечаем все пункты.
- Проверка работоспособности и диагностика. Выбираем “Ведение журнала HTTP” и “Монитор запросов”.
- Функции повышения быстродействия. Отмечаем все пункты.
- Средства управления веб-сайтом. Отмечаем только “Консоль управления IIS”.
Когда все пункты выбраны, нажимаем Ок. После завершения установки обязательно перезагружаемся!
Теперь переходим к созданию веб-сайта. Открываем Панель управления -> Система и безопасность -> Администрирование -> Управление компьютером (можно быстрее: меню Пуск -> правый клик на Компьютер -> в меню выбрать пункт Управление). В открывшемся окне раскрываем группу “Службы и приложения” и открываем “Диспетчер служб IIS”. В окне Подключения выбираем папку Сайты, затем в правом окне Действия нажимаем на ссылку “Добавить веб-сайт”.
Далее необходимо указать имя веб-сайта и месторасположение его файлов (по умолчанию c:inetpubwwwroot). Остальные опции оставляем без изменения.
Нажимаем OK. На этом базовая настройка завершена. Нужно проверить работоспособность только что созданного сайта. Открываем браузер и в адресной строке вводим: http://localhost. Если все работает правильно, вы увидите похожую страницу:
В этом режиме базовой установки веб-сервер способен отображать только статические страницы (обычный HTML + JavaScript). Чтобы расширить его возможности, можно установить поддержку ASP, ASP.NET или PHP. Сам я занимаюсь программированием пока только на PHP, поэтому далее расскажу только об установке PHP на IIS в режиме FastCGI.
Установка PHP (FastCGI)
Конечно, оптимальный веб-сервер для PHP – это Apache, но все же бывают случаи когда требуется установить PHP на IIS. Тем более, в последнее время разработчиками была проделана большая работа, чтобы производительность PHP на IIS улучшилась.
Перед началом установки необходимо скачать релиз PHP с сайта http://windows.php.net/download/. Там предлагается несколько вариантов. Нам необходим релиз VC9 x86 Non Thread Safe. Для работы в режиме FastCGI это наиболее быстрый и стабильный вариант. Я рекомендую скачивать релиз с установщиком (installer), а не zip-архив (это для любителей ручной установки).
Теперь запускаем установщик. После нескольких не особо информативных окон нам предложат выбрать веб-сервер и режим работы PHP:
IISFastCGI – да, сейчас это единственный стабильный вариант установки PHP на IIS.
Далее переходим к выбору компонетов PHP. Если установку PHP производите впервые, лучше оставить значения по умолчанию.
После завершения работы установщика, переходим к настройкам IIS. В принципе здесь надо сделать только одно действие – поднять приоритет php-файлов, чтобы они обрабатывались в первую очередь. В диспетчере служб IIS нажимаем по названию нашего сайта и в окне справа выбираем раздел “Документ по умолчанию”. В появившемся списке необходимо переместить index.php в начало:
Пользователи Windows 7 64-бит, внимание! Вам необходимо произвести одно дополнительное действие. Откройте раздел “Пулы приложений”. Выделите DefaultAppPool и откройте “Дополнительные параметры” (через правый клик или в крайней правой колонке). В разделе Общие необходимо найти опцию “Разрешить выполнение 32-битных приложений” (Enable 32-bit Applications) и установить в положение True. Если уже созданы дополнительные пулы для уже существующих сайтов, то для каждого из них нужно проделать ту же операцию.
Теперь необходимо провести тестирование PHP. В корневую папку веб-сайта (c:inetpubwwwroot) необходимо поместить файл index.php со следующим содержанием:
phpinfo()
Открываем сайт в браузере (http://localhost). Если все работает правильно, вы увидите страницу с информацией об установке PHP:
Установка MySQL
Инструкция по установке MySQL на Windows вынесена в отдельную статью.
FAQ
- При запуске сайта возникает ошибка: «Процесс не может получить доступ к файлу, так как он используется другим процессом. (Исключение из HRESULT: 0×80070020)». Эта ошибка говорит о том, что порт, к которму осуществлена привязка сайта (по умолчанию 80-й), уже занят другим приложением. Очень часто такая ошибка возникает, если установлен другой веб-сервер (например Apache). Чтобы выяснить какой процесс занимает 80-й порт, в командной строке введите: netstat -ano -p tcp В колонке “Локальный адрес” ищем запись вида 0.0.0.0:80, далее смотрим какой “PID” соответствует этой записи. В “Диспетчере задач” открываем вкладку Процессы (опцию «Отображать процессы всех пользователей» должна быть отмечена). Далее переходим в меню Вид -> «Выбрать столбцы» отметь «ИД проесса (PID)». Теперь с помощью PID можно выяснить какой процесс занимает порт. Еще одним из решений этой проблемы является привязка сайта к альтернативному порту (например 8080).
- При запуске php-скрипта появляется ошибка: Warning: fopen(путь_к_файлу): failed to open stream: Permission denied in путь_к_файлу. Проблема в том, что группа пользователей IIS_IUSRS имеет права только на чтение. Открыть свойства папки, в которой распологаются файлы веб-сайта (по умолчанию wwwroot), закладка Безопасность. В списке находим группу IIS_IUSRS и даем ей права полного доступа.
- Как установить кодировку сайта. Откройте “Диспетчер служб IIS”, выберите нужный веб-сайт.В настройках сайта откройте раздел “Заголовки ответов HTTP”. Нажмите ссылку Добавить. В открывшемся окне в поле Имя введите: Content-type, в поле Значение введите: text-html; charset=windows-1251 (см. скриншот). Вместо windows-1251 можно прописать любую другую кодировку.
Ссылки по теме:
- Настройка веб-сервера Apache + PHP + MySQL на Windows 7
- Установка MySQL на Windows 7
- Настройка ftp-сервера (IIS) на Windows 7
- Настройка WebDAV на IIS (Windows 7)
- Настройка DDNS – как сделать постоянный доступ к веб-серверу, если провайдер Интернет предоставляет только динамические внешние ip-адреса.
Используемые источники:
- https://interface31.ru/tech_it/2012/05/windows-server-nastraivaem-veb-server-iis.html
- https://olorg.ru/page/ustanovka-iis-na-windows-7
- https://www.q2w3.ru/2010/05/08/1673/