Http сервер на windows server 2008 r2

Здесь я расскажу как организовать хостинг сайта на своем компьютере. Для примера — сайт под управлением WordPress.  В качестве операционной системы будет использоваться Windows Server 2008 R2. (о организации хостинга в Windows 8 можно прочитать здесь). Кто-то начнет сразу кричать о легкости и бесплатности Linux, и я не буду спорить, но мне нравится эта ОС. Она надежная и легкая в администрировании. На мой субъективный взгляд у нее один недостаток — цена. Кроме того, я не утверждаю, что представленная ниже конфигурация сервера для хостинга является самой лучшей и удобной. Я просто опишу последовательность действий, который я предпринял, чтобы мой сайт заработал. Итак:

0. Оглавление

  1. Что потребуется
  2. Запуск веб-сервера IIS
  3. Установка PHP
  4. Установка MySQL
  5. Установка WordPress

1. Что потребуется

  1. Подключенный к сети Интернет, постоянно работающий компьютер, под управлением Windows Server 2008 R2 (О том как установить Windows Server 2008 я писал здесь).
  2. Выделенный IP-адрес на текущем подключении.
  3. Зарегистрированное доменное имя (О том как это сделать можно прочитать здесь).
  4. Доменное имя должно быть привязано к текущему выделенному IP (И об этом я тоже писал здесь)

2. Запуск веб-сервера IIS

Для начала нашему серверу необходимо добавить роль Web-сервера. В Windows Server 2008 эта роль называется Internet Information Services или IIS. Для добавления заходим в «Пуск» — «Администрирование» — «Диспетчер сервера». Раскрываем вкладку «Роли» и нажимаем «Добавить роли» .

Запустится «Мастер добавления ролей», нажимаем «Далее» и в списке выбираем «Веб-сервер (IIS)» .

Нажимаем 2 раза «Далее» и попадаем на страницу выбора служб ролей. Помимо уже отмеченных служб, отмечаем «ASP.NET», «Расширяемость .NET», «CGL», «Расширения ISAPI», «Фильтры ISAPI», нажимаем «Далее» и «Установить» .

После завершения установки в Ролях появилась вкладка «Веб-сервер (IIS)», в которой содержится «Диспетчер служб IIS» (Также он доступен через «Пуск» — «Администрирование» — «Диспетчер служб IIS»)

В диспетчере мы видим наш сервер, и вкладку «сайты», по умолчанию содержащую «Default Web Site». Этот сайт состоит из приветственной страницы IIS. Мы можем просмотреть ее открыв Internet Explorer и в строке адрес введя http://localhost

Можно сразу удалить эту страницу, кликнув в «Диспетчере служб IIS» по ней правой кнопкой и выбрав «Удалить» .

На этом подготовка операционной системы закончена. Далее надо установить PHP и MySQL.

3. Установка PHP

Нам необходимо реализовать поддержку языка PHP. Для этого нужно установить и запустить соответствующую службу. Скачиваем с http://windows.php.net/download/установщик php-сервера. На момент написания статьи актуальной была версия 5.3.6. После скачивания устанавливаем PHP-сервер, следуя инструкциям инсталлятора не меняя настроек и выбрав режим «IISFastCGI» . Более подробно об установки PHP можно прочитать в статье «Установка и настройка компоненты PHP для веб-сервера IIS».

Теперь нужен плагин PHP Manager for IIS для управления PHP из из диспетчера IIS. Скачиваем его здесь: http://phpmanager.codeplex.com/releases/view/69115. После загрузки также устанавливаем его следуя инструкциям инсталятора. Если все сделано правильно в Диспетчере служб IIS должна появиться оснастка «Администратор PHP»

Запускаем ее, и нажимаем на «Зарегистрировать новую версию PHP», указываем путь к исполняемому файлу php и нажимаем «ОК»

Все, на этом регистрация PHP завершена.

4. Установка MySQL

Для хранения базы данных будем использовать бесплатный MySQL. Скачиваем установщик на официальной странице http://www.mysql.com/downloads/installer/. Последняя версия на момент написания статьи 5.5.13. После загрузки запускаем установку, соглашаемся с лицензионным соглашением, выбираем режим «Typical» и нажимаем «Install». После завершения установки, оставляем галочку «Launch the MySQL Instance Configuration Wizard» и нажимаем «Finish».

Запустится вышеназванный мастер. Нажимаем «Next» и выбираем режим «Standart Configuration».

Нажимаем «Next», ничего не меняя еще раз «Next» и вводим пароль на учетную запись «root». Советую сразу записать пароль на листок. Как говорится, тупой карандаш лучше острой памяти. А лучше всего использовать специальные менеджеры паролей. Еще раз жмем «Next» и «Execute». Если все прошло хорошо, то мы должны увидеть следующее:

Жмем «Finish». Установка завершена.
Для управления MySQL я использую простую бесплатную утилиту HeidiSQL, которую можно скачать с http://www.heidisql.com/download.php. На момент написания статьи последней была версия 6.0. Установив программу, следуя инструкциям инсталлятора и запустив ее, мы увидим окно «Session manager», где нужно добавить подключение к нашему MySQL серверу.

Нажимаем «New» и оставляем все поля нетронутыми, введя лишь тот самый пароль, который мы записали на предыдущем шаге.

Жмем «Open» и соглашаемся с сохранением настроек. Теперь нам надо создать новую базу, для нашего сайта. Для этого в окне слева с наименованием баз кликаем правой кнопкой, выбираем «Create new Database».

Заполняем параметры следующим образом:

  • Name: Любое имя нашей базы (может совпадать с именем домена)
  • Character set: utf8
  • Collation: utf8_unicode_ci

и жмем «ОК», после чего наша база должна появиться в списке:

После чего настройка MySQL тоже закончена. Более подробно про установку и настройку MySQL можно прочитать в статье «Установка и настройка MySQL + HeidiSQL».

5. Установка WordPress

Ну вот,  можно приступать и к самому сайту. Мой сайт сделан на движке WordPress. На дату статьи последней бала версия 3.1.3. Создадим на диске С папку WEB. С официального сайта http://ru.wordpress.org/ скачиваем архив, который нужно извлечь с созданную папку. В папке WEB появится каталог wordpress, который переименуем в соответствии с нашем доменным именем.

Теперь в корне этого каталога найдем файл «wp-config-sample.php» и откроем его любым текстовым редактором, например блокнотом. Найдем и изменим в нем только следующие параметры:
В строке

  • define(‘DB_NAME’, ‘database_name_here’); — вместо database_name_here пишем имя созданной нами базы данных. (В моем случае должно получиться define(‘DB_NAME’, ‘tavalik);
  • define(‘DB_USER’, ‘username_here’); — вместо username_here пишем имя пользователя root.
  • define(‘DB_PASSWORD’, ‘password_here’); — вместо password_here пишем сохраненный нами пароль.

и сохраняем под именем wp-config.php.
Теперь опять заходим в «Диспетчер служб IIS», находим вкладку «Сайты», кликаем по ней правой кнопкой и выбираем «Добавить веб-сайт»

Вводим имя нашего сайта, указываем физический путь к сайту (в моем примере это C:\WEB\tavalik) и нажимаем «ОК».

После этого открываем Internet Explorer, в строке адреса вводим http://localhost и попадаем на страницу установки WordPress. Вводим заголовок сайта, имя пользователя и пароль для входа на сайт, адрес электронной почты и нажимаем «Установить WordPress».

После сообщения об успешной установке нажимаем на «Войти», вводим только что придуманные логин и пароль и попадаем на консоль управления сайтом. Находим в нижнем левом углу «Параметры» .

Вводим краткое описание сайта, и в поля «Адрес WordPress (URL)»и «Адрес сайта (URL)» вводим имя нашего домена. Нажимаем «Сохранить изменения» и….

Все, наш сайт готов. Можно пользоваться. Для проверки вводим в строке браузера имя сайта и, если все сделано правильно, попадаем на начальную страничку.

Внимание! Windows Server 2008 не рекомендуется к использованию с Fort Monitor.

Данная статья является инструментом последней помощи при настройке.
Команда Fort Monitor не несет никакой ответственности за работоспособность продукта на данной версии ОС.
Все недостающие компоненты необходимо находить через Просмотр событий и устанавливать самостоятельно, в зависимости от ошибок.

После установки и настройки MySQL Community Server перейдите в «Диспетчер сервера». В дереве слева выберите пункт «Роли». Нажмите «Добавить роли».

В разделе мастера «Перед началом работы» нажмите «Далее».

В появившемся окне выберите пункт «Веб-сервер (IIS)» и нажмите «Далее».

В разделе мастера «Веб-сервер (IIS)» нажмите «Далее».

В разделе «Службы ролей» выберите «ASP.NET» в ветке «Разработка приложений».

Появится окно предупреждения о зависимых службах, нажмите в нем «Добавить требуемые службы роли». И нажмите «Далее».

В появившемся окне «Подтверждение» нажмите кнопку «Установить».

Установка начнётся.

После окончания установки IIS и необходимых компонентов нажмите кнопку «Закрыть».

Далее необходимо установить компоненты Webfarm и Request Router

  1. Скачайте установщик Webfarm по ссылке и установите его.
  2. Скачайте установщик Request Router по ссылке и установите его.
  3. Выполните следующе команды в консоли от прав администратора сервера:
%windir%\system32\inetsrv\appcmd set config -section:system.webServer/proxy /enabled:"True" /commit:apphost
%windir%\system32\inetsrv\appcmd set config -section:system.webServer/proxy /preserveHostHeader:"True" /commit:apphost
%windir%\system32\inetsrv\appcmd set config -section:system.webServer/proxy /timeout:"10:00:00" /commit:apphost

На этом установка IIS завершена. Полностью перезагрузите сервер.

После перезагрузки можно переходить к установке Fort Monitor Vendor.


Windows, Программное обеспечение

  • 07.02.2020
  • 9 619
  • 0
  • 4
  • 4
  • 0

Настройка простейшего сервера на базе IIS

  • Содержание статьи
    • Описание
    • Установка и настройка IIS
    • Добавить комментарий

Описание

В данной статье будет рассмотрен процесс минимальной настройки сервера на базе IIS, который вы можете поднять для того, чтобы обеспечить доступ к вашему серверу по протоколу http (https) и ftp.

Установка и настройка IIS

Windows Server 2008 имеет в комплекте сильно изменённую роль веб-сервера IIS. Изменения коснулись как самого веб-сервера, так и инструментов его управления. В этой заметке я коснусь только простейших настроек. Впрочем и решённую задачу назвать сложной проблематично. Итак, имеется сервер, на базе его надо настроить ftp-сервер с доступом по паролю к определённой папке и http-сервер с анонимным доступом к этой же папке, но без возможности просмотра содержимого папки.

Для начала рассмотрим процесс установки IIS. Роль веб-сервера доступна в списке стандартных ролей Windows Server 2008. И для её установки достаточно эту роль добавить.

В связи с требованиями задачи список компонентов устанавливаемых по умолчанию надо подкорректировать. Directory Browsing и Basic Authentication нам не понадобятся.

По завершении мастера установки можно проверить корректность работы сервера подключившись в браузере к http://localhost. В случае успешной установки должен отобразиться следующий сайт:

К сожалению, в комплект Windows Server 2008 не входит FTP Publishing Service 7.0. Он доступен на сайте Майкрософта. Ссылка на скачивание здесь. При установке выбираем все предлагаемые компоненты:

После установки FTP вернёмся к конфигурированию нашего веб-сервера. Консоль управления IIS очень сильно изменилась по сравнению с шестой версией и выглядит следующим образом:

В Authentication проверяем что к нашему веб-сайту доступ имеют только анонимные пользователи. В IIS 7.0 доступ к ресурсам сервера анонимных пользователей идёт от имени служебной учётной записи IUSR.

Далее в Basic Settings указываем папку, где будет находиться содержимое нашего сайта

и права доступа к файловым ресурсам (пользователю IUSR даём только право Read на нашу папку).

Теперь попробуем посмотреть в браузере что у нас получилось. При попытке доступа к localhost по http-протоколу получаем чистый экран

Если же будем обращаться к конкретному файлу — то сервер даст его скачать

Вернёмся к конфигурированию нашего веб-сервера. Займёмся настройками FTP. Для этого не обязательно делать отдельный ftp-сайт, можно подключить ftp к текущему нашему сайту. Делается это через команду Add FTP Publishing с консоли действий нашего IIS manager’а.

После этого в настройках нашего сайта появятся дополнительные настройки для конфигурирования FTP-сервера.

Для начала в FTP Authentication проверяем, что анонимный доступ к ftp-серверу отключен, включена только Basic аутентификация.

Далее, настраиваем FTP Authorization Rules. Предварительно создаем две локальных группы FTP Admins и FTP Users, например. Первой даём права на чтение-запись на нашем сервере, второй — только на чтение.

Затем, в FTP Directory Browsing можно настроить внешний вид FTP-сайта и различные сообщения сервера.

На этом конфигурация нашего сервера заканчивается. Проверяем отсутствие доступа анонимных пользователей и доступ для пользователя — члена группы FTP Admins:

Ну и напоследок, проверяем через ftp-клиент Total Commander’a права доступа для учётки из группы FTP Admins и для учётки из группы FTP Users.

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

Appearance settings

Почему Server core?

Windows Server, часто разворачивается для поддержания какой-либо определенной роли или нагрузки. Более того при правильно организованной структуре он устанавливается один раз и дальше управляется удаленно, через внешние оснастки.

Так же Server core дает уменьшение возможностей для вредоносного кода. За счет того что из него вырезаны многие компоненты, ненужные в серверной работе. По статистике для Server core сейчас идет около 35% всех обновлений Windows 2008 и приблизительно 59% критических обновлений. Что естественно уменьшает требования к его перезагрузке

Вырезание компонентов так же дало еще одно преимущество. Уменьшение требований к аппаратной части в особенности к оперативной памяти и месту на диске. Рекомендуемые требования для установки Server core составляют минимум 512 Мб оперативной памяти, а чистая установка занимает всего около 8 Гб. Для одного сервера установленного на современной серверной платформе это может быть и не сильно актуально. А вот при условии использования виртуализации множества серверов, это может дать ощутимое преимущество и позволит установить больше серверов на то же железо, по сравнению с «обычным» Windows Server 2008 R2.

Развитие IIS для Server core

Возможность установки IIS для Server core была еще в Windows Server 2008. Однако на нем не было возможности установить .NET. Так же там нельзя было установить PowerShell. Что, по моему мнению, является главным недостатком Windows Server 2008 Core. Конечно, через некоторое время специалисты смогли его установить .NET и запустить PowerShell (http://dmitrysotnikov.wordpress.com/2008/05/15/powershell-on-server-core/) но все равно это не являлась рекомендованной Microsoft процедурой. Как следствие использовать в производстве, это было возможно только на усмотрение Администратора. В Windows Server 2008 R2 поддержка .NET уже реализована и это дает возможность реализации на нем всех задач современного веб сервера, а так же использовать среду PowerShell.

Вторым недостатком Windows Server 2008 Core была его не оптимизированность для настройки. Вся установка осуществлялась из командной строки. В систему не было включено никаких оболочек, позволявшие облегчить настройку. И опять же в скором времени было выпущено множество программ для комфортной установки компонентов (http://www.samag.ru/cgi-bin/go.pl?q=articles;n=02.2009;a=03). Именно поэтому в Windows Server 2008 R2 был введен скрипт начальной установки sconfig, Позволивший значительно упростить первичную установку сервера.

IIS 7.5 на Windows Server 2008 R2 Core позволяет использовать все те же возможности что и «обычный» Windows Server 2008 R2. А именно имеет поддержку WebDAV и FTP, модулей IIS для PowerShell и т.д.

Первичная настройка Server core

После установки Windows Server 2008 R2 в режиме Server Core и ввода логина и пароля мы видим командную строку и … все. Добро пожаловать в мир Server Core J

image

Первое что нужно сделать с любой серверной системой, это настроить сеть. Для этого запускаем скрипт первичной настройки sconfig и выбираем пункт 8

image

Дальше настройка осуществляется в интуитивно понятном окружении, и я его не буду описывать. Так же можно воспользоваться настройкой из командной строки с помощью утилиты netsh

Для того чтобы посмотреть текущие подключения вводим:

netsh interface ipv4 show interfaces

image

И определяем номер нашего подключения. После командой:

netsh interface ipv4 set address name=»3″ source=static address=192.168.1.3 mask=255.255.255.0

где name=»3″ есть номер вашего подключения

DNS сервер добавляется командой

netsh interface ipv4 add dnsserver name=»3″ address=192.168.1.2 index=1

При желании ввод в домен осуществляется так же из скрипта настройки sconfig или с помощью команды

netdom join %computername% /domain:test.local /userd:Administrator /passwordd:*

Активация Wnidows осуществляется с помощью специального скрипта скрипта

cscript C:\Windows\System32\slmgr.vbs

После перезагрузки нам необходимо будет включить среду PowerShell которая по умолчанию выключена. Осуществляется это так же из sconfig. После его запуска выбираем пункт 4

image

Пункт 2 подменю настройки удаленного управления, включает PowerShell. Из командной строки запуск установки осуществляется с помощью данной команды

start /w ocsetup MicrosoftWindowsPowerShell

После перезагрузки мы получим среду PowerShell на нашем сервере.

image

Так же рекомендую включить удаленное. За это ответственна служба WinRM. Опять используем sconfig и 4 пункт, или используем командную строку.

winrm quickconfig

После этого нам станет доступна удаленная консоль диспетчера сервера, появившаяся в Windows Server 2008 R2

image

И в конце можно включить удаленный рабочий стол (RDP). В sconfig это 7 пункт. А вот в командной строке придется воспользоваться отдельным скриптом

cscript C:\Windows\System32\Scregedit.wsf /ar 0

Внимание: Для того чтобы подключатся к серверу с клиентов ниже чем Windows Vista/Windows Server 2008 надо отключить высокий уровень безопасности, установленный по умолчанию.

cscript C:\Windows\System32\Scregedit.wsf /cs 0

Разрешение протокола RDP на брандмауэре осуществляется знакомой нам утилитой netsh

netsh advfirewall firewall set rule group=»Remote Desktop» new enable=yes

Установка и настройка IIS

Как бы не была хороша утилита sconfig в первичной настройки, но она не позволяет устанавливать роли и компоненты Windows Server. Я рекомендую использовать для этого бесплатную оболочку Core configurator 2.0 (http://coreconfig.codeplex.com/) написанную в среде PowerShell. Данная оболочка обладает почти всеми возможностями «обычной» панели управления и позволяет интуитивно понятно настроить сервер. Записать программу на сервер вы можете любым удобным для вас способом. Запуск оболочки, после установки, осуществляется файлом Start_Coreconfig.wsf.

image

Установка ролей осуществляется из меню Computer setting\Add or Remove Roles

image

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

start /w pkgmgr /l:log.etw /iu:IIS-WebServerRole;WAS-WindowsActivationService;WAS-ProcessModel;WAS-NetFxEnvironment;WAS-ConfigurationAPI

Полная установка это небольшая строка в 924 символа J

start /w pkgmgr /iu:IIS-WebServerRole;IIS-WebServer;IIS-CommonHttpFeatures;IIS-StaticContent;IIS-DefaultDocument;IIS-DirectoryBrowsing;IIS-HttpErrors;IIS-HttpRedirect;IIS-ApplicationDevelopment;IIS-ASP;IIS-CGI;IIS-ISAPIExtensions;IIS-ISAPIFilter;IIS-ServerSideIncludes;IIS-HealthAndDiagnostics;IIS-HttpLogging;IIS-LoggingLibraries;IIS-RequestMonitor;IIS-HttpTracing;IIS-CustomLogging;IIS-ODBCLogging;IIS-Security;IIS-BasicAuthentication;IIS-WindowsAuthentication;IIS-DigestAuthentication;IIS-ClientCertificateMappingAuthentication;IIS-IISCertificateMappingAuthentication;IIS-URLAuthorization;IIS-RequestFiltering;IIS-IPSecurity;IIS-Performance;IIS-HttpCompressionStatic;IIS-HttpCompressionDynamic;IIS-WebServerManagementTools;IIS-ManagementScriptingTools;IIS-IIS6ManagementCompatibility;IIS-Metabase;IIS-WMICompatibility;IIS-LegacyScripts;IIS-FTPPublishingService;IIS-FTPServer;WAS-WindowsActivationService;WAS-ProcessModel

Удаленное управление, включается поле установки компонента IIS-ManagementService

start /w ocsetup IIS-ManagementService

После необходимо включить удаленное управление сервером IIS, для этого добавляем ключ в реестр

reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WebManagement\Server /v EnableRemoteManagement /t REG_DWORD /d 1

и включаем службу удаленного управления WMSvc. Сделать это можно из Core Configurator или с помощью команды

net start wmsvc

Замечу, что мы только запускаем службу. Чтобы установить ее автоматический запуск с сервером можно воспользоваться, например, данной PowerShell командой

set-service wmsvc -startuptype automatic

После этого к серверу можно будет подключаться снаружи, из Windows Server 2008 R2, с помощью консоли управления IIS.

image

Или с помощью Модулей IIS для PowerShell. Для их установки нужно разрешить запуск неподписанных скриптов, например

set-executionPolicy remoteSigned

и импортировать модули

import-module WebAdministration

Для постоянной работы рекомендуется добавить импорт модулей в профиль PowerShell.

Заключение

Данная статья описывает только настройку Windows Server 2008 R2 в режиме Server core. Но уже видно, что с его выходом мы получили отличную платформу для веб серверов, потребляющую мало ресурсов. Она позволяет использовать всю мощь технологии ASP .NET и вести удаленное управление множеством серверов, в том числе и на Windows Server 2008 с соответствующими ограничениями в виде отсутствия поддержки .NET и PowerShell

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Как дать приложению доступ в интернет windows 10
  • Tv box на windows эмулятор
  • Как переместить панель задач в право экрана windows 11
  • Живые обои для windows 10 microsoft store
  • Windows server 2016 для игр