Iis выбор средства разработки


Содержание

IIS 7.0: краткая инструкция для системного администратора. Часть 1 – пpoверка результатов установки.

Продолжаем говорить об процедуре установки веб сервера под управлением IIS 7.0 на Windows Server 2008, которая была рассмотрена в предыдущем посте.

Теперь перейдем к проверке результатов установки IIS 7.0. Самый простой вариант проверить, работает ли веб сервер, особенно – находясь за локальной консолью, это обратиться из любого веб-браузера по адресу http://localhost/. Далее, проверить с локальной и удаленной машины по IP-адресу.

При установке IIS 7.0 создается веб сайт по умолчанию, сконфигурированный на ответ при любом URL-запросе, поступившем на порт 80 любого сетевого интерфейса сервера, на котором установлен IIS 7.0. Т.е. запрос браузера типа http://localhost/ должен быть обработан как запрос к веб сайту по умолчанию. Содержимое сайта по умолчанию представляет собой 2 файла – iisstart.htm и welcome.png (который отображается в iisstart.htm), которые и будут открыты клиентом. Поэтому результат обращения к localhost будет иметь следующий вид:

Теперь, если все хорошо (если «плохо» – поиск неисправностей и ошибок мы рассмотрим позже, в отдельном разделе), убедимся, что все модули, которые должны быть установлены по умолчанию – подключены и работают, а базовая конфигурация – отвечает нашим требованиям.

1. Основным инструментом управления IIS 7.0 является консоль Internet Information Services (IIS) Manager, которая устанавливается по умолчанию, вместе с ролью Web Server в Windows Server 2008 (IIS Management Console, раздел Management Tools при установки модулей). После соответствующей установки консоль управления IIS 7.0 можно найти, как дочернюю запись внутри раздела Web Server (IIS) в разделе ролей Server Manager, либо как пункт в разделе Administrative Tools меню Start, либо выполнив команду inetmgr (в командной строке или через пункт Run того же меню Start).

2. При старте консоль Internet Information Services (IIS) Manager открывается с «домашней страницей», на которой в виде панелей находится информация о том, к каким веб серверам и веб сайтам подключался пользователь консоли до этого (если консоль только установлена вместе с ролью Web Server (IIS), то в консоле присутствует запись только о локальном веб сервере), также присутствуют ссылки для выбора подключения к другим серверам, веб сайтам, веб приложениям и папкам, а также ссылки на внешние ресурсы, посвященные IIS.

3. Кроме того, на домашней странице присутствует панель новостей, которые подгружаются как новостная RSS-лента с сайта www.iis.net, если администратор нажимает на ссылку Enable IIS News. Новости, кстати, очень полезные, рекомендуется включать и использовать эту информацию в повседневной работе.

4. При подключении к какому либо веб серверу IIS 7.0 консоль Internet Information Services (IIS) Manager представляет его конфигурацию, как логическую структуру – уровень самого веб сервера, чьи настройки являются глобальными и распространяются по умолчанию на все веб сайты, пулы приложений и, сообственно, веб сайты со своими настройками. Эта конфигурационная иерархия, в виде разворачивающегося дерева, начинающегося с узла с именем (или IP) веб сервера, отображается в левой панели консоли Internet Information Services (IIS) Manager.

5. Если выбрать какой-то узел в дереве конфигурации, то в центральной панель консоли Internet Information Services (IIS) Manager будут отображены в виде отдельных иконок все параметры (а также – модули или списки), соответствующие конфигурации выбранного узла, а в правой панели – набор контекстных задач и операций, которые администратор (или пользователь) может выполнить над данным узлом.

6. Выбираем верхний узел, узел веб сервера, в котором представлены иконки, отвечающие за параметры работы модулей всего веб сервера, эти параметры наследуются по умолчанию для всех веб сайтов. Убеждаемся, что все необходимые модули установлены и отображены. Снимок экрана при установке конфигурации по умолчанию приведен ниже.

7. В правой панели при выборе узла веб сайта отображаются все операции, возможные для выполнения непосредственно с веб сервером (службами IIS в целом) в данном конексте – перезапуск, останов, запуск, переход к пулам приложений и сайтам.

8. Убеждаемся, что пулы приложений (Application Pools) сконфигурированы. Пулы приложений будут рассмотрены позже. Пулы являются дочерним узлом в дереве конфигурации для узла веб сайта. При установке по умолчанию создается только один пул – DefaultAppPool, в котором регистрируется одно приложение – сконфигурированный по умолчанию веб сайт, работу которого мы уже проверили. См. снимок экрана.

9. Ниже узла пулов приложений в дереве конфигурации находится узел веб сайтов (Sites), при выборе которого отображается список работающих на данном веб сервере веб сайтов. По умолчанию создается один веб сайт под названием Default Web Site с внутренним номером (ID) равным 1, «привязанный» на 80 порт всех IP-адресах всех сетевых интерфейсов к любому URL в запросе, и использующий в качестве домашнего каталога своего контента каталог с путем %SystemDrive%\inetpub\wwwroot (что при установленном Windows Server 2008 на диск C: соответствует C: \inetpub\wwwroot).

10. При выборе в левой панели консоли узла веб сайта (Default Web Site), также, как и в случае с выбором узла веб сервера, в центральной панели отображаются иконки для доступа к параметрам конфигурации различных модулей, на этот раз – конкретного веб сайта. Убеждаемся, что также, как и в случае со всем веб сервером, все необходимые модули представлены в центральной панели.

11. В правой панели консоли, аналогично панели для всего веб сервера, отображаются контекстные команды, правда, на этот раз их список серьезно расширен – старт/стоп/перезапуск процесса веб сайта, просмотр его базовых и расширенных настроек (а не параметров модулей), настройки привязки (адрес, порт, доменное имя – по сочетанию которых будет отвечать на запросы данный веб сайт) и т.п.

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

12. Выберите узел веб сервера в дереве конфигурации в левой панели консоли Internet Information Services (IIS) Manager. В центральной панели кликните на иконку Modules. В центральной панели откроется следующий полный список установленных по умолчанию модулей, представляющий из себя перечень .dll файлов.

13. Чтобы убедиться, что веб сервер будет работать только со статическими файлами (по умолчанию) или только с нужными вам расширениями – выберите снова узел веб сервера и в центральной панели кликните на иконку Handler Mappings. Откроется список «привязки» расширений вызываемых на веб сайте пользователем файлов и привязанных к данным расширениям модулям, выполняющим обработку данного вызова. Обратите внимание, что по умолчанию все файлы привязаны к модулю обработки статических файлов (т.е. запрос какого либо скриптового или исполнимого файла из домашнего каталога веб сайта не будет приводить к его исполнению на сервере, а лишь к передаче данного файла пользователю), а также к модулям документа по умолчанию и просмотра каталога. С этими модулями мы познакомимся позже.

14. И, наконец, для того, чтобы убедиться в безопасности веб сайта – проверьте параметры его аутентификации. Для этого выбираем иконку Authentication в той же центральной панели. По умолчанию никаких модулей аутентификации веб сервер (и веб сайты) не поддерживает. Т.е. все подключения для него анонимны. В чем безопасность? Это значит, что пользователям будет доступен только то содержимое домашних каталогов сайтов – файлы и подкаталоги – которые имеют NTFS разрешения для чтения «всем» (Everyone). В случае, если таких разрешений файл не имеет, пользователю будет отказано в доступе с соответствующей ошибкой 401. Если же пользователь попробует каким-то образом аутентифицироваться в процессе HTTP запроса на сервере – то поскольку никаких модулей аутентификации, кроме анонимного, на веб сервере не установлено – он снова получит соответствующую ошибку 401.

Такие настройки безопасности по умолчанию – только анонимные пользователи – позволяют гарантировать защиту данных на сервере, для которых требуются соответствующие разрешения, а также – что механизм аутентификации веб сервера (которого в данном случае просто нет) не будет использован для перебора паролей и прочих попыток «взлома» через учетные записи.

Итак, сервер установлен и его работоспособность проверена. Теперь достаточно поместить какой либо статический контент (файлы HTML, изображения, документы и файлы для выгрузки пользователями) в домашний каталог его сайта по умолчанию (напоминаю, что это в большинстве случаев C:\inetpub\wwwroot) – и веб сайт под управлением IIS 7.0 начнет работать. Ну, и конечно, для внешних сайтов – не забыть прописать их A-record в вашей доменной зоне на публичном DNS сервере.

В следующей части – установка IIS 7.0 в режиме командной строки, особенности работы IIS 7.0 на Server Core.

Добавление роли «Веб-сервер»

Перед установкой BI-сервера и веб-приложения на серверную операционную систему Windows на серверах добавьте роль сервера.

Данная настройка актуальна, если BI-сервер устанавливается на веб-сервер Internet Information Services версии 7, 8 или 10.

Примечание . Перед ознакомлением с данной статьей рекомендуется изучить статью по установке веб-приложения на ОС Windows.

Настройка IIS 7

В « Диспетчере сервера » перейдите в раздел « Роли » и в группе « Сводка по ролям » нажмите ссылку « Добавить роли », в открывшемся мастере перейдите на страницу « Роли сервера » и отметьте флажком « Веб-сервер (IIS) ».

Перейдите на страницу « Службы ролей » и дополнительно к имеющимся настройкам добавьте:

« ASP.NET » в разделе « Разработка приложений ». При установке флажка будет выдан запрос на установку зависимых служб, нажмите кнопку « Добавить требуемые службы роли »;

« Windows — проверка подлинности » в разделе « Безопасность »;

в разделе « Средства управления »:

Консоль управления IIS;

Сценарии и средства управления IIS;

Нажмите « Далее », затем « Установить ». После установки закройте мастер.

Настройка IIS 8

В « Диспетчере сервера » перейдите на вкладку « Все серверы ». В разделе « Серверы » выполните команду контекстного меню « Добавить роли и компоненты » для нужного сервера в списке. Будет открыт мастер добавления ролей и компонентов. Перейдите на вкладку « Роли сервера » и установите флажок для раздела « Веб-сервер (IIS) ». Будет открыто окно подтверждения добавления компонента. Нажмите кнопку « Добавить компонент »:

В подразделах « Разработка приложений », « Безопасность » и « Средства управления » раздела « Веб-сервер (IIS) » установите настройки, аналогичные настройкам, описанным для IIS 7 (см. п 2):

Перейдите на последнюю страницу мастера и нажмите кнопку « Установить ». После установки закройте мастер.

Настройка IIS 10

В « Диспетчере сервера » перейдите на вкладку « Все серверы ». В разделе « Серверы » выполните команду контекстного меню « Добавить роли и компоненты » для нужного сервера в списке. Будет открыт мастер добавления ролей и компонентов. Перейдите на вкладку « Роли сервера » и установите флажок для раздела « Веб-сервер (IIS) ». Будет открыто окно подтверждения добавления компонента. Нажмите кнопку « Добавить компонент »:

В подразделах « Разработка приложений », « Безопасность » и « Средства управления » раздела « Веб-сервер (IIS) » установите настройки, аналогичные настройкам, описанным для IIS 7 (см. п 2):

Перейдите на последнюю страницу мастера и нажмите кнопку « Установить ». После установки закройте мастер.

Установка веб-сервера IIS 8 в Windows Server 2012 R2

Веб-сервер представляет собой некоторую программу (службу), принимающую HTTP- запросы от клиентов, обычно от веб-браузеров, обрабатывающую данные запросы и выдающую им ответ, как правило, вместе с HTLM-страницей (сайтом), изображением, файлом, медиа-потоком или другими данными. Ниже подробно рассмотрим процесс установки подобной службы, а именно веб-сервера IIS 8 (Internet Information Server) входящего в поставку Microsoft Windows Server 2012 R2.

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

1. Установка веб-сервера IIS

Запускаем Диспетчер серверов (Server Manager). Его можно запустить с ярлыка на панели задач, или же выполнив команду servermanager.exe (Для этого необходимо нажать комбинацию клавиш Win + R, в появившемся окне в поле «Открыть» (Open) написать имя команды и нажать «ОК» ).

В диспетчере серверов, в меню, расположенном в правом верхнем углу окна, выберем «Управление» (Manage) — «Добавить роли и компоненты» (Add Roles and Features)

Запустится Мастер добавления ролей и компонентов (Add Roles and Features Wizard). Нажимаем «Далее» (Next) на стартовой странице.

Тип установки (Installation Type) отмечаем «Установка ролей или компонентов» (Role-based or feature-based installation) и нажимаем «Далее» (Next).

Выбираем текущий сервер из пула серверов (Select a server from the server pool) и снова жмем «Далее» (Next).

На следующем шаге выбираем роль, которую необходимо установить. В нашем случае это роль «Веб-сервер (IIS)» (Web Server). Отмечаем ее в списке.

При этом мастер предложит нам добавить компоненты, необходимые для Веб-сервера, а именно «Консоль управления службами IIS» (IIS Management Console). Соглашаемся на установку дополнительных компонент нажав «Добавить компоненты» (Add Features) и жмем «Далее» (Next).

Оставляя список компонент без изменений нажимаем «Далее» (Next).

Ознакомившись с информацией о роли веб-сервера снова жмем «Далее» (Next).

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

  • Общие функции HTTP (Common HTTP Features)
    • Статическое содержимое (Static Content)
    • Документ по умолчанию (Default Document)
    • Обзор каталогов (Directory Browsing)
    • Ошибки HTTP (HTTP Errors)
  • Разработка приложений (Application Development)
    • ASP
    • ASP.NET 3.5
    • Расширяемость .NET 3.5 (.NET Extensibility 3.5)
    • Расширения ISAPI (ISAPI Extensions)
    • Фильтры ISAPI (ISAPI Filters)
  • Исправление и диагностика (Health and Diagnostics)
    • Ведение журнала HTTP (HTTP Logging)
    • Монитор запросов (Request Monitor)
  • Средства управления (Management Tools)
    • Консоль управления IIS (IIS Management Console)

Для установки FTP-сервера требуются компоненты:


  • FTP-Сервер (FTP Server)
    • Служба FTP (FTP Service)
    • Расширяемость FTP (FTP Extensibility)

и т. д. Если выделить службу в списке, слева доступно ее краткое описание. Выбрав необходимые службы ролей жмем «Далее» (Next).

Устанавливаем флаг «Автоматический перезапуск конечного сервера, если требуется» (Restart the destination server automatically if required) если перезагрузка не помешает работе других пользователей и жмем «Установить» (Install) для начала установки указанных в списке служб.

Дожидаемся завершения установки веб-сервера (может произойти перезагрузка сервера) и нажимаем «Закрыть» (Close) для завершения работы мастера.

Возвращаемся в диспетчер серверов, в меню «Средства» (Tools) выбираем появившейся там пункт «Диспетчер служб IIS» (Internet Information Services).

В запустившемся Диспетчере служб IIS, в окне подключений (Connections) увидим только что установленные веб-сервер (соответствует сетевому имени компьютера) а также один веб-сайт, добавленный по умолчанию, с названием Default Web Site.

Данный сайт представляет одну веб-страницу с приветствием на различных языках и откликается на все запросы к данному веб-серверу по 80-му порту. Чтобы просмотреть его, достаточно запустить веб-браузер, например Internet Explorer, и ввести в строку адреса http://localhost.

Также этот сайт можно просмотреть с любого другого компьютера в сети, забив в строку адресе IP компьютера где установлен веб-сервер IIS.

Файлы этого сайта, как и файлы всех других добавленных позже сайтов по умолчанию располагаются в каталоге C:\interpub\wwwroot.

Ну и соответственно, чтобы сайты расположенные на данном веб-сервере были доступны из сети Интернет по внешнему IP-адресу или доменному имени (о том как привязать доменное имя к IP-адресу читайте здесь), необходимо на маршрутизаторе выполнить проброс 80-ого порта на компьютер с установленным веб-сервером IIS.

2. Перезапуск сервера IIS

Иногда требуется перезапустить веб сервер IIS. Сделать это можно как из Диспетчера служб IIS, кликнув правой кнопкой мыши по серверу в окне подключений или из меню «Действия» (Action)

так и из командной строки, выполнив команду

  • параметр /noforce необязателен и используется для защиты от потери данных в случае, когда службы IIS не могут быть остановлены в течение одноминутного периода ожидания.
  • параметр также необязателен при работе на локальном компьютере. В случае удаленного администрирования сервера IIS в качестве параметра указывается имя NetBIOS компьютера, на котором выполняется перезапуск IIS.

При перезапуске веб сервера IIS происходит перезапуск следующих служб (если они устанавливались при установке компонент IIS):

Служба Описание
Служба IIS Admin Эта служба управляет всеми службами IIS, кроме службы WWW (FTP, NMTP и SMTP).
Служба WWW Эта служба обеспечивает подключения клиентов к веб-узлам.
Служба HTTP SSL Эта служба обеспечивает безопасные подключения клиентов к веб-узлам.
Служба FTP Эта служба обеспечивает FTP-подключения и администрирование в диспетчере IIS.
Служба SMTP Эта служба обеспечивает передачу электронной почты по сети.
Служба NNTP Эта служба обеспечивает передачу электронных новостей по сети.

Смотрите также:

Ниже приведена небольшая инструкция об изменении политики паролей в Microsoft Windows Server 2012 R2. По умолчанию политика паролей определена таким образом, что все пароли учетных записей пользователей должны удовлетворять следующим…

В данной статье я расскажу как добавить разрешающее правило в Брандмауэр Windows Server 2012 R2 (в Windows Server 2008 R2 действия аналогичны). Правило будем добавлять на примере работы сервера 1С:Предприятие…

Ниже будет подробно рассказано как установить Microsoft .NET Framework 3.5 на локальный сервер под управлением Windows Server 2012, так как в этой ОС не получится установить Microsoft .NET Framework 3.5 через обычный инсталлятор, как на…

Современные средства разработки Web-приложений. ASP .NET 1.1 и 2.0

ASP . NET — инфраструктура разработки web -приложений. ASP . NET автоматизирует большую часть процесса разработки сложных web -приложений, включая взаимодействие с web -сервером, начальную обработку запросов и генерацию результирующего HTML . Процесс разработки web -приложений становится похожим на разработку обычных Windows-приложений, где разработчик визуально располагает элементы управления на форме, задает их свойства и пишет обработчики событий.

ASP . NET является частью . NET Framework. Таким образом, ASP . NET -приложения могут использовать классы . NET Framework, возможности защищенного программирования и другие преимущества управляемого кода. По мере развития ASP . NET процесс разработки становится все более визуальным (работа с компонентами и мастерами). Код приложения может быть написан на любом языке, совместимом с общеязыковой исполняющей средой ( common language runtime ), — например, Microsoft Visual Basic , C#, JScript . NET или J#.

Состав ASP .NET

ASP . NET включает:

  • среду создания и обработки страниц и компонент;
  • компилятор ASP .NET;
  • инфраструктуру безопасности;
  • возможности управления состоянием;
  • возможности настройки конфигурации приложения;
  • мониторинг приложений;
  • отладчик;
  • среду создания и развертывания XML Web services;
  • расширяемую среду хостинга и управления жизненным циклом web-приложений;
  • расширяемую среду проектирования пользовательского интерфейса web-приложения.

Среда создания и обработки страниц и компонент

Среда создания и обработки страниц и компонент ASP .NET — среда программирования, исполняемая на web-сервере для динамической генерации и отображения ASP .NET web-страниц. Страница ASP .NET может быть запрошена любым браузером или устройством, в ответ ASP .NET генерирует разметку (HTML). Как правило, можно отображать одну и ту же страницу в различных браузерах, так как ASP .NET генерирует разметку с учетом типа браузера, запрашивающего страницу. Разумеется, можно создать web-страницу ASP .NET Web, ориентированную на конкретный браузер. ASP .NET поддерживает компоненты для создания web-приложений для мобильных устройств (сотовых телефонов, КПК и других).

Страницы ASP .NET являются объектно-ориентированными. При разработке страницы можно работать с HTML-элементами, используя свойства, методы и события. ASP .NET предлагает следующую модель разделения функциональности на серверную и клиентскую части: события, происходящие на клиентской стороне, обрабатываются исполняемым на сервере кодом. Кроме того, ASP .NET автоматически управляет состоянием страницы и компонент.

Среда создания страниц и компонент позволяет создавать повторно используемые пользовательские элементы управления, инкапсулируя в них необходимый UI и функциональность.

Кроме того, среда создания страниц и компонент ASP .NET предоставляет темы и скины для придания единообразного вида всему приложению, отдельным страницам или для настройки внешнего вида отдельных элементов управления. Скин — это описание внешнего вида элементов управления, относящихся к определенному классу (например, использовать зеленый шрифт для всех кнопок) или обладающих другим общим признаком. Тема — это набор скинов , применяемых как единое целое. Темы и скины описываются XML-файлами. Темы и скины можно применять как программно, так и с помощью визуального редактора свойств. Существует возможность создавать собственные темы и скины .

Можно также использовать эталонные страницы (master pages) — это web-страницы ASP .NET, содержащие элементы, которые должны появляться на каждой странице приложения (например, главное меню). Когда пользователь запрашивает страницу web-приложения, среда обработки страниц и компонент объединяет содержимое web-страницы с содержимым эталонной и возвращает результат.

Компилятор ASP .NET

Код ASP .NET является компилируемым, в нём используется строгая типизация, раннее связывание, оптимизации. После компиляции кода ASP .NET в промежуточный язык общеязыковая среда исполнения (common language runtime) компилирует его в машинный код, еще раз проводя оптимизацию с учетом конкретной архитектуры процессора.

Компилятор ASP .NET компилирует все приложение, включая страницы и элементы управления, в сборку, которую может использовать среда хостинга ASP .NET для обработки запросов.

Инфраструктура безопасности

Инфраструктура безопасности ASP .NET дополняет средства безопасности .NET Framework. ASP .NET поддерживает аутентификацию и авторизацию. Поддерживается аутентификация на основе учетных записей Windows и форм (в том числе с применением ролей). Авторизация может происходить на основе групп Windows или ролей.

Web-приложения выполняются в рамках процесса ASP .NET Можно применять NTFS Access Control Lists (ACLs), средства управления доступом СУБД для обеспечения безопасности ASP .NET-приложений.

Управление состоянием

ASP .NET позволяет сохранять информацию между запросами страниц. (Это может быть полезно, например, для хранения списка товаров в корзине покупателя web-магазина. Покупатель при этом может читать обзоры, изучать ассортимент и время от времени возвращаться на страницу со списком содержимого корзины.) Можно хранить информацию, специфичную для всего приложения, страницы, пользователя, конкретной сессии.

ASP .NET предоставляет средства удаленного управления состоянием. То есть можно централизованно управлять состоянием нескольких экземпляров web-страницы на одном сервере.

Конфигурация ASP .NET-приложений

ASP .NET-приложения используют систему управления конфигурацией. Можно управлять конфигурацией web-сервера, web-сайта или отдельного приложения. Конфигурация настраивается во время развертывания приложения и может быть изменена разработчиком в любой момент, как правило, не затрагивая работу web-сервера и не перекомпилируя web-приложение. Конфигурация ASP .NET-приложений хранится в XML-файле, что упрощает редактирование настроек конфигурации.

Мониторинг приложений

ASP .NET предоставляет возможности мониторинга состояния приложения и его производительности. ASP .NET записывает в свой журнал (log) основные события, происходящие во время работы приложения, включая ошибки и условия их возникновения. Каждая запись содержит параметры, которые могут оказаться полезны для диагностики работы приложения.

ASP .NET поддерживает два типа счетчиков производительности, доступных из приложения:

  • группа системных счетчиков производительности ASP .NET.
  • группа счетчиков производительности приложений ASP .NET

Отладчик

ASP .NET позволяет отлаживать приложения во время их исполнения, в том числе удаленно. Можно отлаживать управляемые и неуправляемые объекты, код на управляемых и скриптовых языках.

Среда создания и обработки страниц ASP .NET предоставляет возможности пошаговой отладки web-приложений.


Среда создания и развертывания XML Web Services

ASP .NET поддерживает web-сервисы XML. Web-сервис XML — компонент, инкапсулирующий некоторую функциональность. Web-сервисы позволяют приложениям получать данные посредством таких стандартов, как HTTP и XML. Web-сервисы XML не связаны ни с одной конкретной технологией, поэтому самые различные программы могут использовать функциональность web-сервиса. Подробнее web-сервисы будут рассмотрены в «XML Web Services. Обзор технологии» .

Илон Маск рекомендует:  Использование таймера

Расширяемая среда хостинга и управления жизненным циклом web-приложений

Расширяемая среда хостинга ASP .NET управляет жизненным циклом приложений с момента первого обращения пользователя к ресурсу и до момента завершения работы приложения. Сама ASP .NET использует в качестве среды web-сервер (IIS), при этом предоставляя функции хостинга. ASP .NET позволяет обрабатывать события, происходящие в приложениях, и создавать собственные HTTP-обработчики и модули.

Расширяемая среда проектирования пользовательского интерфейса web-приложения

ASP .NET позволяет создавать собственные визуальные редакторы серверных элементов управления и интегрировать их в средства разработки, например в Visual Studio. Визуальные редакторы позволяют разрабатывать пользовательские интерфейсы элементов управления и добавлять к элементам управления необходимые свойства и методы.

Общее и частное о Web-серверах

За последние несколько лет Интернет стремительно проник почти во все сферы человеческой жизни и деятельности. В сети, которая изначально задумывалась для нужд Министерства обороны США, нашлось место всем: и самому этому министерству, и государственным и коммерческим организациям, и частным лицам, и вообще всему, что только можно вообразить. В целом – это огромная, сложная, но вместе с тем довольно стабильно работающая система со множеством сервисов, программ, разработок и т.п. Но многие сегодня думают, что Интернет – это WWW и Web-браузеры. И это не случайно. WWW, в отличие от e-mail или FTP, позволяет не просто передавать файлы или текстовые письма, а, скажем, показывать картинки, передавать в реальном времени звук и даже видео. При всем этом вам ненужно ничего скачивать к себе на компьютер: вы просто используете весь мир как одну большую сеть. Необходимостью является, пожалуй, лишь хорошая скорость передачи данных (для радио и видео порядка 3 Кбайт/с или выше).

Ниже будут рассмотрены некоторые темы, связанные с Web-серверами, работой которых мы пользуемся каждый раз, глядя в окно Internet Explorer или Netscape Communicator. В основном я буду говорить об общих вопросах и сравнивать наиболее популярные на сегодняшний день серверы.

Что такое Web-сервер?

Итак, Web-сервер — это программа, обрабатывающая сообщения, которые приходят на 80-й порт (стандартная настройка; можно конечно, настроиться и на любой другой порт), и работающая с протоколом HTTP (Hypertext Transfer Protocol). Именно этот протокол является основным для WWW. Он представляет собой набор правил для обмена данными и основан на принципе «запрос-ответ». Запрос идет от клиента к серверу и содержит служебную информацию о типе запроса (данные, заголовок, форма), заголовок запроса (допустимые типы файлов, авторизация, версия клиента, адрес, где была активирована ссылка на данный ресурс, и сам адрес) и запрос данных. Ответ идет от сервера к клиенту. В нем находится служебный код (число), показывающий состояние обработки запроса, ответный заголовок (версию сервера, дату, длину и тип данных) и сами данные. Так, вкратце, работает Web-сервер с клиентом (см. поясняющую схему).

Однако в последнее время рынок программного обеспечения стал очень обширен. В частности, увеличилось количество Web-серверов, выпускаемых различными производителями. Как и в случае с любым другим товаром, здесь есть огромный выбор по цене, предлагаемым возможностям, встроенным расширениям, уровню технической поддержки, удобству установки и обслуживания и по многим другим параметрам. Естественно, любой Web-сервер поддерживает некоторый минимальный набор функций – поддержка протокола HTTP, настройка на разные порты, создание log-файлов, пользовательские директории, функции защиты. Перечисленное, является, на наш взгляд, наиболее важным в любой программе, в том числе и в Web-сервере. Но есть и некоторые тонкости. Например, планирование своей системы вы вряд ли начнете с Web-сервера: скорее вы будете выбирать операционную систему. Тут нужно иметь в виду, что не всякий сервер реализован для конкретной операционной системы. Далее, прежде чем установить сервер, необходимо понять, что он поддерживает, а что нет. Понятно, что любой сервер поддерживает протокол HTTP, но не всякий сервер изначально поддерживает, например, работу с базами данных. Плюс к этому сейчас любой разработчик Web-серверов создает свой API (Application Program Interface) для работы с сервером. Удобство средств разработки программ для сервера тоже играет немалую роль при выборе последнего. Также необходимо сказать, что, в отличие от многих других товаров, программы бывают бесплатные. При этом «бесплатное» в случае Web-серверов означает если уж не самое лучшее, то, по крайней мере, самое популярное. Я имею в виду сервер Apache, который, по оценкам, установлен примерно на 60% всех WWW-серверов, причем является бесплатным, свободно распространяемым и считается одним из самых надежных и стабильных. Сейчас в мире существуют довольно много Web-серверов (несколько десятков), но популярностью пользуются лишь несколько. Самых популярных три: Apache от ASF (Apache Software Foundation), Internet Information Server от Microsoft и iPlanet server (бывший Netscape Enterprise server) от Netscape и Sun. В подтверждение этих слов можно привести список ста крупных компаний, которые в той или иной степени используют возможности WWW. Все (или почти все) названия в правой колонке хорошо известны. Понятно, что известная компания должна быть аккуратна во всем, в том числе и в представлении себя через Интернет. В табл. 1 всего семь компаний используют Web-серверы, отличные от трех упомянутых. Поэтому, не делая никаких комментариев, приведем по порядку основные характеристики, достоинства и недостатки трех вышеуказанных серверов.

Apache от ASF

Без преувеличения можно сказать, что это самый распространенный Web- сервер в мире. Сейчас имеются версии фактически для всех известных платформ и операционных систем, в том числе и для Windows NT. Поддержка Windows NT появилась лишь в последней версии, и это еще больше повысило популярность Apache в мире. Его несомненными достоинствами являются надежность, исключительная производительность и огромный набор функций и дополнительных модулей. Но все же «изюминкой» этого сервера является свободное бесплатное распространение. Это дает возможность, помимо экономии денег, быстро исправлять ошибки и вносить в код программы необходимые дополнения. Надо отдать должное тем, кто занимается созданием Web-сервера Apache, — эти люди безвозмездно и, главное, очень быстро справляются с замеченными ошибками. Кстати, отмечу, что таким человеком сможет стать любой, желающий внести свой вклад в развитие этого сервера. Версия 1.3.x считается одной из самых стабильных и быстрых среди всего семейства Apache. Основными свойствами Apache являются поддержка кросс-платформ, протокол HTTP/1.1, модульная структура, защита, запись log-файлов. Кроме стандартной поставки имеется большое количество модулей, которые расширяют возможности Apache. Свободное распространение и открытый код позволяют создавать наиболее защищенные модули. В этом с Apache трудно соревноваться любому коммерческому серверу. Но, несмотря на все эти достоинства, есть и серьезный пробел, который я бы все-таки не назвал недостатком: у Apache нет красивой программы установки и управления. Во время установки приходится иметь дело с командной строкой. Более того, при установке под UNIX иногда приходится даже вносить коррективы в include-файлы. Конечно, есть подробное описание того, что и как необходимо изменить, однако, на первый взгляд это кажется не очень удобным. При работе приходится иметь дело не с оконной программой, а с текстовыми конфигурационными файлами. Техническая поддержка проявляется не в виде красивых help-файлов или фирм, предоставляющих специалистов, а в основном через телеконференции и обмен мнениями системных администраторов. На самом деле фирмы, предоставляющие услуги технической поддержки, все же есть, но это стоит денег. Но такой нетипичный для серьезного продукта стиль не делает Apache менее популярным, и на рынке он является самым серьезным конкурентом для всех WWW-серверов.

Краткие характеристики Web сервера Apache:

  • последняя версия: 2.0 alpha 4;
  • последняя официальная версия: 1.3.12;
  • бесплатный, открытый код;
  • операционные системы: NetBSD, Digital UNIX, BSDI, AIX, OS/2, SCO, HPUX, Novell NetWare, Macintosh, Be OS, Windows NT, Linux, Windows 95, FreeBSD, Windows 98, IRIX, Solaris;
  • может создавать несколько log-файлов; под Windows NT запускается как сервис и/или программа, под UNIX может запускаться из inetd; допускает настройку на несколько портов;
  • поддерживает Windows CGI, HTTP/1.1, в том числе и HTTP/1.1 PUT; есть функция автоматического ответа при изменении документа; поддерживает Microsoft ISAPI;
  • возможен запрет доступа с конкретных адресов, к конкретным документам, запрет запуска CGI скриптов, доступ конкретных пользователей; допускаются изменения без перезапуска сервера;
  • поставляется вместе с полным исходным кодом; поддерживает другие протоколы (ftp, telnet); имеет настройку на пользовательские директории; содержит модуль proxy.
  • Процент на рынке Web-серверов — 58,85%
  • Количество — 3 570 377

Рейтинг (по пятибалльной системе):

  • надежность — 5
  • производительность — 5
  • простота использования — 3
  • техническая поддержка — 4,5

iPlanet server (бывший Netscape Enterprise server) от Netscape и Sиn

Не так давно произошло объединение Netscape и Sun в области создания Web- сервера, а именно: бывший Netscape Enterprise server теперь перешел в новое качество – iPlanet server. Это не просто смена имени. Теперь ко многим качествам предыдущего сервера добавилась тесная интеграция с Java- технологиями. Последней версией является 4.1. iPlanet Server, который поставляется на компакт-диске или может быть загружен по Сети. При этом он не является бесплатным. Есть версии как под Windows NT, так и под некоторые UNIX-системы. Привлекает простота установки, конфигурирования и управления. Базовая установка занимает не более 15 минут. Вся дальнейшая настройка производится с использованием Java-программы, запускаемой в браузере откуда угодно. Что касается Java, то, как и следовало ожидать, сервер поддерживает новейшие Java-технологии, такие как Java Servlets 2.1, Java Server Pages .92, JVM, JavaScript 1.4. На сегодняшний день это единственный сервер такого плана. В дополнение к этому iPlanet server включает в себя возможности по управлению доступом к базам данных. В его поставке содержатся драйверы для работы с Oracle, Informix, DB2, и Sybase. С точки зрения программирования для iPlanet server, сейчас наметилась тенденции к объединению с iPlanet Application Server. Это позволит существенно расширить возможности по созданию программ для Web-сервера iPlanet. Все перечисленные свойства делают Web-сервер iPlanet привлекательным для использования в разных областях. Также ведется работа над сервером FastTrack, который будет ограниченным по возможностям аналогом полного сервера, но при этом бесплатным (при полной аналогии с Netscape FastTrack). Что касается технической поддержки, то все описания, справочники и другие материалы относительно iPlanet server сделаны на высоком уровне (впрочем, как и любая документация, находящаяся на сервере Netscape).

Сформулируем кратко основные характеристики сервера:

  • последняя версия: 4.1;
  • цена: 60 дней бесплатно, далее 1495 долл.;
  • операционные системы: HPUX 11.0, Solaris 2.6/7.0, IBM AIX 4.2.1, Compaq Tru64 Unix 4.0d, SGI IRIX 6.5, NT 4 SP4;
  • поддержка Java Servlets 2.1, Java Server Pages .92, JVM, JavaScript 1.4; Oracle, Informix, DB2, и Sybase; преобразование PDF в HTML; поддержка LDAP;
  • может создавать несколько log-файлов, протоколировать производительность, создавать log-файлы для каждого CGI-скрипта; под Windows NT запускается как сервис и/или программа, под UNIX может запускаться из inetd; допускает настройку на несколько портов;
  • в поставку включен SNMP агент; поддерживает Windows CGI, HTTP/1.1, в том числе и HTTP/1.1 PUT; есть функция автоматического ответа при изменении документа; поддерживает Netscape Server API;
  • возможен запрет доступа с конкретных адресов, доступ конкретных пользователей; есть поддержка S-HTTP; допускаются изменения без перезапуска сервера; есть поддержка SSL второй и третьей версий и авторизации.
  • графическая программа установки; графическая программа управления; присутствует программа для оценки производительности во время работы; поддержка директорий пользователей; встроенный алгоритм поиска; возможность удаленного управления.
  • Процент на рынке Web-серверов — 5,75%
  • Количество — 349 067

Рейтинг (по пятибалльной системе):

  • надежность — 4,5
  • производительность — 5
  • простота использования — 5
  • техническая поддержка — 4

Internet Information Server (IIS) от Microsoft

Сервер IIS является лучшим для Windows NT. Это и понятно, потому что вряд ли кто-нибудь, кроме разработчиков операционной системы, может сделать программу, полностью использующую возможности этой системы. Версия 4.0 поставлялась бесплатно вместе с Service Pack, а версия 5.0 поставляется исключительно как часть Windows 2000. Версия 5.0, по мнению специалистов, отличается более высокой надежностью, более тесной интеграцией с Windows и целым набором новых свойств. Установка и конфигурирование занимают не более 10 минут. Особенно приятно, что теперь ненужно устанавливать какие-либо Service Pack’ и не нужно перегружать систему после установки. При всем этом сам сервер занимает около 30 Мбайт на диске и вполне работает на машине Pentium 200 МГц с объемом памяти 128 Мбайт. Однако установить и запустить сервер можно только на Windows 2000 Server. Помимо удобной установки, удобно реализована и система управления сервером. Существует несколько полезных программ шаблонов (Wizards) для выполнения частых и рутинных операций. Вообще, справедливости ради нужно отметить следующее: в том, что касается удобства, мало кто сможет соревноваться с программами Microsoft. К тому же IIS поддерживает известные и включает в себя новые стандарты защиты. Так, есть поддержка известных методов SSL 3.0, Kerberos 5.0, и нового метода Fortezza (новый стандарт безопасности). Наиболее интересной и отличительной чертой IIS является поддержка WebDAV (Web-based Distributed Authoring and Versioning). Это недавно появившийся стандарт, который позволяет превращать внутренние сети в единое пространство, используя ресурсы соседних компьютеров как свои. Для пользователей IIS это означает, что они могут c большим удобством разделять свои рабочие файлы и иметь при этом возможность блокировать файлы. Вместе с тем существуют и некоторые проблемы, и несовместимость. Не совсем корректно происходит работа одновременно с Front Page Server, иногда при изменении конфигурации приходится перезапускать систему, встречаются ошибки при использовании системы удаленного администрирования. Но в целом версия 5.0 является значительным шагом вперед по сравнению с 4.0 в плане надежности и удобства.

Приведем кратко основные характеристики:

  • последняя версия: 5.0;
  • цена: поставляется вместе с Windows 2000 Server;
  • операционные системы: Windows 2000 Server, Advanced Server;
  • поддержка ASP, Microsoft API, ODBS;
  • может создавать несколько log-файлов; протоколирование производительности; возможность создания log-файлов для каждого CGI-скрипта; под Windows NT запускается как сервис и/или программа, под UNIX может запускаться из inetd; допускает настройку на несколько портов;
  • в поставку включен SNMP-агент; поддерживает доступ к переменным состояния сервера из CGI, HTTP/1.1, в том числе и HTTP/1.1 PUT; есть функция автоматического ответа при изменении документа; поддерживает Microsoft ISAPI;
  • возможен запрет доступа с конкретных адресов, к конкретным документам, доступ конкретных пользователей; есть поддержка S-HTTP; допускаются изменения без перезапуска сервера; есть поддержка SSL второй и третьей версий и авторизации;
  • графическая программа установки; графическая программа управления; поддерживает другие TCP-протоколы (ftp, telnet); присутствует программа для оценки производительности во время работы; поддержка директорий пользователей; встроенный алгоритм поиска; возможность удаленного управления.
  • Процент на рынке Web-серверов — нет данных
  • Количество — нет данных

Рейтинг (по пяти бальной системе):

  • надежность — 5
  • производительность — 5
  • простота использования — 5
  • техническая поддержка — 5.

Что в итоге?

Таковы основные характеристики трех наиболее популярных Web-серверов. Давайте сравнительно рассмотрим их в том порядке, в каком они приведены в конце описания каждого сервера.

  • сервер на Apache — бесплатный, и с этим нельзя соперничать. Все, что можно сказать: администраторы платят за это неудобной процедурой установки и управления;
  • по числу поддерживаемых операционных систем лидерство Apache также бесспорно. В результате этот сервер практически одинаково устанавливается и конфигурируется фактически на любой платформе. И если у вас есть необходимость в управлении серверами на разных машинах, то вам совсем не требуется учить разные системы. Однако существует и оборотная сторона медали. Как я уже говорил, трудно сделать идеальный продукт под все системы. И, следовательно, IIS явно лучше и эффективнее использует особенности Windows 2000;
  • в вопросе поддержки Java-технологий и работы с базами данных лидирует iPlanet server. Конечно, и к Apache есть дополнительные модули, что удобно, но в iPlanet это есть «от рождения», а вот ASP изначально поддерживает лишь IIS;
  • в вопросе log-файлов несколько уступает Apache, так как он не ведет протоколирования производительности. Все остальные свойства вполне одинаковы. Может показаться, что создание log-файлов — не самая важная часть работы сервера, но это не так. Она напрямую связано с безопасностью, так как вы имеете возможность анализа доступа к системе. В вопросе безопасности и взлома порты http ничем не хуже, а в некоторых случаях даже лучше других. В частности, при некорректной настройке сервера можно создать такую ситуацию, что внешние пользователи смогут получать доступ к ресурсам системы;
  • в вопросе поддерживаемых протоколов все три сервера одинаковы. Различаются они лишь тем, какое API поддерживает данный сервер. Вместе с тем Apache, например, поддерживает и ISAPI фирмы Microsoft;
  • защита и связанные с ней протоколы одинаковы почти у всех серверов. Единственное, что нужно отметить, — в описании Apache не написано явно, что есть поддержка SSL. Это связано с тем, что в стандартной поставке на самом деле нет модуля SSL, но его можно скачать отдельно и установить;
  • в вышеприведенных характеристиках Apache проигрывает за счет отсутствия удобной программы установки и управления. Более того, у Apache ограничены возможности удаленного управления. С одной стороны, это неудобно, а с другой — любая дополнительная возможность управления ресурсами системы извне представляет собой возможные проблемы безопасности и повод для взломщиков.

Не менее важным после набора характеристик показателем является производительность работы сервера. Не хотелось бы останавливаться на этом подробно, ибо эта тема заслуживает отдельной большой статьи, основанной на тщательном независимом исследовании, но несколько слов сказать все-таки же стоит. Под производительностью понимается скорость работы сервера в зависимости от количества подключенных клиентов и от интенсивности передачи запрашиваемых данных. Производительность зависит от многих факторов: типа и скорости процессора, объема оперативной памяти, операционной системы, присутствия других программ, настройки самого сервера. В случае с Apache есть и более экзотический момент. Обычно его берут в виде исходных текстов. Поэтому производительность откомпилированной программы зависит от типа и параметров компилятора и линкера. Определение производительности является весьма трудной задачей, поскольку не все зависит от Web-сервера. Чтобы сравнивать именно производительность Web-серверов, необходимо поставить их в одинаковые условия. На самом деле не совсем ясно, что значит поставить в равные условия, скажем, сервер IIS под Windows 2000 на Intel и сервер Apache под AIX 4.3 на RS6000. Это абсолютно разные по типу и структуре операционные системы и разные процессоры. Здесь наиболее тонким моментом, по моему мнению, является выделение того, что имеет отношение к Web- серверу, а что — ко всему остальному. Тем не менее подобные исследования проводятся. Результаты некоторых из них можно найти на том же сервере Webcompare. Кратко отметим, что по этим тестам производительность Apache несколько ниже по сравнению с двумя своими конкурентами, но, как мы уже говорили, не очень понятны методика проведения этих тестов и, главное, принцип обработки информации.

Кроме свойств, которые присущи непосредственно WWW-серверам, есть еще вопросы работы операционной системы и Web-сервера как единого целого. Это в первую очередь касается сервера IIS как лучшего для Windows 2000. И дело не в этом сервере, а в Windows, а также в том, что необходимость перезапускать всю систему возникает гораздо чаще, чем в других операционных системах. Это приводит к тому, что ваш Web-сервер может работать нестабильно. Иногда стабильность работы является более важным критерием, чем удобство управления, например в таких системах реального времени, как Интернет-радио.

Итак, проведенные сравнения, несмотря на их краткость, показывает, что у всех серверов есть как достоинства, так недостатки. Может быть, вам не удастся выбрать оптимальный сервер из перечисленных выше. Но в любом случае остается общепризнанным тот факт, что именно эти три сервера являются сегодня наиболее популярными в мире, обладая при этом надежностью и высокой производительностью.

Iis выбор средства разработки

В связи с тем, что задача АСУ ВУЗ является сетевой, то было решено использовать web-технологии для реализации подсистемы.

Выбор языков и технологий

CGI (Common Gateway Interface — «общий интерфейс шлюза») — стандарт интерфейса, служащего для связи внешней программы с web-сервером [17]. Программу, которая работает по такому интерфейсу совместно с web-сервером, принято называть шлюзом, хотя многие предпочитают названия скрипт (сценарий) или CGI-программа.

Сам интерфейс разработан таким образом, чтобы можно было использовать любой язык программирования, который может работать со стандартными устройствами ввода / вывода. Такими возможностями обладают даже скрипты для встроенных командных интерпретаторов операционных систем, поэтому в тех случаях, когда нет необходимости в сложной функциональности, могут использоваться даже такие простые командные скрипты.

Для передачи данных об информационном запросе от сервера к шлюзу, сервер использует командную строку и переменные окружения. Эти переменные окружения устанавливаются в тот момент, когда сервер выполняет программу шлюза.

Шлюз осуществляет свой вывод в стандартный поток вывода. Этот вывод может представлять собой или документ, сгенерированный шлюзом, или инструкции серверу, где получить необходимый документ.

Как правило, шлюз производит свой вывод, который интерпретируется и посылается обратно клиенту. Преимущество этого подхода состоит в том, что шлюз не должен посылать полный HTTP/1.0 заголовок на каждый запрос.

Технологии ASP и ASP.NET

ASP (Active Server Pages — активные серверные страницы) — технология от Microsoft, позволяющая разрабатывать приложения для World Wide Web. ASP работает на платформе операционных систем линии Windows NT и на web-сервере IIS. ASP не является языком программирования — это лишь технология предварительной обработки, позволяющая подключать программные модули во время процесса формирования Web-страницы. Относительная популярность ASP основана на простоте используемых языков сценариев (VBScript или JScript) и возможности использования внешних COM-компонент.

Возможность встраивания в web-страницы скриптов (кода, написанного на языке программирования, например VBScript или JScript) позволяет объединить оформление с данными полученными из различных источников, например, из баз данных.

Идеология создания современных web-приложений заключается в инкапсуляции бизнес-логики в отдельные компоненты, написанные по технологии COM. Технология ASP в данном случае является связующим звеном между этими компонентами и интерфейсом web-приложения.

Использование Active Server Pages не требует специфичных браузеров. Все ASP-скрипты запускаются и выполняются на web-сервере, причем браузер получает только результирующие HTML-файлы.

Внешне ASP функционирует также как CGI. Аналогичным образом передаются параметры (формат строки запроса) и осуществляется вывод результатов. Однако производительность ASP оказывается гораздо выше, т.к. при каждом запросе не происходит отдельной загрузки ASP-интерпретатора.

Помимо повышения производительности ASP решают также проблему оформления динамических web-страниц. Ранее при использовании CGI приходилось либо встраивать текст оформления web-страницы в программный код CGI-сценария, либо вынуждало разработчиков создавать свои собственные системы шаблонов. Использование ASP позволяет разработчику одновременно работать над программным кодом и над оформлением Web-страницы.

C# — язык программирования, сочетающий объектно-ориентированные и контекстно-ориентированные концепции [18, 19]. Разработан в 1998-2001 гг. группой инженеров под руководством Андерсa Хейлсбергa в компании Microsoft как основной язык разработки приложений для платформы Microsoft.NET. Компилятор с C# входит в стандартную установку самой.NET, поэтому программы на нём можно создавать и компилировать даже без инструментальных средств вроде Visual Studio.

Синтаксис C# близок к С++ и Java. Язык имеет строгую статическую типизацию, поддерживает полиморфизм, перегрузку операторов, указатели на функции-члены классов, атрибуты, события, свойства, исключения, комментарии в формате XML. Переняв многое от своих предшественников — языков С++, Delphi, Модула и Smalltalk — С#, опираясь на практику их использования, исключает некоторые модели, зарекомендовавшие себя как проблематичные при разработке программных систем: так, C# не поддерживает множественное наследование классов (в отличие от C++) или вывода типов (как в Haskell).

PHP — язык программирования, созданный для генерации HTML-страниц на web-сервере и работы с базами данных. Ныне поддерживается подавляющим большинством предоставителей хостинга. Входит в LAMP (Linux, Apache, MySQL, PHP) — «стандартный» набор для создания web-сайтов.

В области программирования для сети PHP — один из популярнейших скриптовых языков (наряду с JSP и языками, используемыми в ASP) благодаря своей простоте, скорости выполнения, богатой функциональности и распространению исходных кодов на основе лицензии PHP. PHP выделяется наличием ядра и подключаемых модулей, наличием расширений: для работы с базами данных, сокетами, динамической графикой, криптографическими библиотеками, документами формата PDF и т.п. Любой желающий может разработать своё собственное расширение и подключить его. Существуют сотни расширений, однако в стандартную поставку входит лишь несколько десятков хорошо зарекомендовавших себя. Интерпретатор PHP подключается к web-серверу либо через модуль, созданный специально для этого сервера (например, для Apache или IIS), либо в качестве CGI-приложения.


Кроме этого, он может использоваться для решения административных задач в операционных системах UNIX, Linux, Windows и Mac OS X. Однако в таком качестве он не получил распространение, отдавая пальму первенства Perl, Python и VBScript.

Синтаксис языка подобен тому языка Си. Некоторые элементы, такие как ассоциативные массивы и цикл foreach, заимствованы из Perl.

Главным образом, область применения PHP сфокусирована на написание скриптов, работающих на стороне сервера; таким образом, PHP способен выполнять всё то, что выполняет любая другая программа CGI, например, обрабатывать данных форм, генерировать динамические страницы или отсылать и принимать cookies. Но PHP способен выполнять и множество других задач.

PHP способен не только выдавать HTML. Возможности PHP включают формирование изображений, файлов PDF и даже роликов Flash (с использованием libswf и Ming), создаваемых «на лету». PHP также способен выдавать любые текстовые данные, такие, как XHTML и другие XML-файлы. PHP способен осуществлять автоматическую генерацию таких файлов и сохранять их в файловой системе вашего сервера вместо того, чтобы отдавать клиенту, организуя, таким образом, кеш динамического содержания, расположенный на стороне сервера.

Одним из значительных преимуществ PHP является поддержка широкого круга баз данных, в том числе Oracle.

PHP поддерживает «общение» с другими сервисами с использованием таких протоколов, как LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM (на платформах Windows) и многих других. Кроме того, вы получаете возможность работать с сетевыми сокетами «напрямую». PHP поддерживает стандарт обмена сложными структурами данных WDDX. Обращая внимание на взаимодействие между различными языками, следует упомянуть о поддержке объектов Java и возможности их использования в качестве объектов PHP.

PHP включает средства обработки текстовой информации, начиная с регулярных выражений Perl или POSIX Extended и заканчивая парсером документов XML. Для парсинга XML в PHP 4 используются стандарты SAX и DOM. Для преобразования документов XML существует возможность использовать расширение XSLT. В PHP 5 обработка XML-документов стандартизирована и происходит на базе библиотеки libxml2. Также добавлены два новые расширения для работы с XML: SimpleXML и XMLReader.

Последним по порядку, но не по значению, является поддержка многих других расширений, таких, как функции поисковой машины mnoGoSearch, функции IRC Gateway, функции для работы со сжатыми файлами (gzip, bz2), функции календарных вычислений, функции перевода.

Сайт, сделанный с помощью AJAX, субъективно работает гораздо быстрее обычного сайта. По крайней мере, быстрее откликается на любые действия пользователя. Классические и, пожалуй, лучшие примеры использования AJAX — проекты Google Maps и Gmail. Запросы пользователей обрабатываются очень быстро, потому что использование технологии AJAX позволяет не перезагружать страничку целиком, а обновлять на ней только те элементы, которые требуют обновления.

AJAX расшифровывается как Asynchronous JavaScript + XML (асинхронный JavaScript+XML) и технологией в строгом смысле слова не является. Это просто аббревиатура, обозначающая подход к созданию Web-приложений с помощью следующих технологий:

· стандартизированное представление силами XHTML и CSS;

· динамическое отображение и взаимодействие с пользователем с помощью DOM;

· обмен и обработка данных в виде XML и XSLT;

· асинхронные запросы с помощью XMLHttpRequest;

Если в стандартном Web-приложении (Рис. 2.7) обработкой всей информации занимается сервер, тогда как браузер отвечает только за взаимодействие с пользователем, передачу запросов и вывод поступившего HTML, то в AJAX-приложении (Рис. 2.8) между пользователем и сервером появляется еще один посредник — движок AJAX. Он определяет, какие запросы можно обработать «на месте», а за какими необходимо обращаться на сервер.

Рисунок 2.7 Классическое Web-приложение

Поведение сервера тоже изменилось. Если раньше на каждый запрос сервер выдавал новую страницу, то теперь он отсылает лишь те данные, которые нужны клиенту, а HTML из них прямо в браузере формирует движок AJAX.

Рисунок 2.8 Web-приложение, использующее идеологию AJAX

Асинхронность проявляется в том, что далеко не каждый клик пользователя доходит до сервера, причем обратное тоже справедливо — далеко не каждая реакция сервера обусловлена запросом пользователя. Большую часть запросов формирует движок AJAX, причем его можно написать так, что он будет загружать информацию превентивно, предугадывая действия пользователя.

Понятно, что с такой схемой работы качественная нагрузка на сервер меняется — если раньше запросов было мало, но каждый из них требовал значительных ресурсов (серверу нужно вытащить информацию из БД, сформировать из нее Web-страницу и отдать браузеру), то теперь задача сервера упрощается (формировать Web-страницы не нужно, да и объем передаваемых данных меньше), но запросов обрабатывать приходится больше.

До сих пор AJAX нельзя назвать совместимым со всеми видами клиентских браузеров. На многих браузерах AJAX-приложения просто не работают (хотя последние версии IE, Firefox и даже Opera — начиная с восьмой версии — нормально его поддерживают). Кроме того, сейчас на AJAX возлагаются определенные надежды (по крайней мере, компанией Adaptive Path, которая придумала саму аббревиатуру и усиленно продвигает этот подход к созданию Web-приложений), и очень вероятно, что AJAX их оправдает не в полной мере.

Дело в том, что AJAX — не универсальная технология. Даже если не учитывать вопросы совместимости, сама архитектура AJAX предполагает принципиально новый подход к созданию приложений, новый подход к созданию интерфейсов и не предназначен для решения всех типов задач. Добавление в архитектуру приложения, выступающего в качестве «посредника» между пользователем и хранилищем данных, накладывает определенные ограничения. В любом случае, информация об ограничениях такого рода может быть добыта только методом проб и ошибок.

Однако писать такие приложения — задача трудоемкая. Нужно написать и отладить на JavaScript движок из десяти или двадцати тысяч строк кода плюс реализовать серверную часть. Причем копировать удачные решения практически не у кого: по большому счету, несколькими действительно масштабными AJAX-проектами может похвастаться только Google, но у них проекты довольно специфические — Google Suggest (сервис, подсказывающий наиболее популярные запросы), Gmail и Google Maps.

Выбор сервера приложений

Выбор сервера приложений — один из важнейших моментов при разработке web-приложения.

Web-сервер — это сервер, предоставляющий доступ к сайтам World Wide Web. Когда пользователь даёт браузеру команду открыть тот или иной документ на том или ином сайте, браузер подключается к соответствующему серверу и запрашивает у него содержимое документа. Таким образом, любой сайт расположен на каком-либо web-сервере.

Кроме того, термин web-сервер обозначает также программное обеспечение, работающее на сервере, которое отвечает за предоставление клиентам (например, браузерам) доступа к сайтам по запросу. Обычно такое программное обеспечение работает по протоколам HTTP и / или HTTPS. На сегодня наиболее распространёнными web-серверами являются:

· Apache (свободно распространяемый web-сервер с открытым исходным кодом; наиболее часто используется в Unix-подобных операционных системах);

· IIS от компании Microsoft (работает на системах линии Windows NT).

Web-приложение — клиент-серверное приложение, в котором клиентом выступает браузер, а сервером — web-сервер. Браузер является разновидностью так называемых тонких клиентов. Браузер способен отображать web-страницы и, как правило, входит в состав операционной системы, а функции его обновления и сопровождения лежат на поставщике операционной системы. Вся логика приложения сосредотачивается на сервере, а браузер лишь отображает информацию, загруженную по сети с сервера. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы и web-приложения таким образом являются межплатформенными сервисами.

Web-приложение получает запрос от клиента и выполняет вычисления, после этого формирует web-страницу и отправляет её клиенту по сети с использованием протокола HTTP. Само web-приложение может выступать в качестве клиента других служб, например, базы данных или другого web-приложения, расположенного на другом сервере. В настоящее время набирает популярность новый подход к разработке web-приложений, называемый AJAX. При использовании AJAX страницы web-приложения не перезагружаются целиком, а лишь догружают необходимые данные с сервера, что делает их более интерактивными и производительными.

Для создания web-приложений используются разнообразные технологии и языки программирования, например:

Ряд из них, такие как PHP, имеют открытый код, распространяются свободно и могут использоваться практически на любых web-серверах, другие (ASP.NET) — привязаны к конкретным web-серверам.

Таким образом, от выбора web-сервера и языка программирования зависят архитектура, идеология и бизнес-логика системы.

Tomcat — программа — web-сервер, написанная на языке Java и реализующая спецификацию сервлетов и спецификацию JavaServer Pages (JSP), которые являются стандартами для разработки web-приложений на языке Java. Таким образом, Tomcat позволяет запускать web-приложения реализующие указанные выше спецификации и дополнительно содержит ряд программ для конфигурирования самого себя. Tomcat разрабатывается фондом Apache Software Foundation под лицензией Apache License и является программой с открытым исходным кодом.

IIS 6.0 — это мощный web-сервер, который предоставляет весьма надежную, управляемую, масштабируемую и безопасную архитектуру для web-приложений [21]. IIS 6.0 позволяет организациям любых размеров быстро и легко развертывать web-узлы и предоставляет высокопроизводительную платформу для приложений, разработанных с использованием Microsoft ASP.NET и Microsoft.NET Framework.

IIS 6.0 позволяет повысить надежность web-инфраструктуры и безопасность информационных систем, снизить совокупную стоимость поддержки информационной инфраструктуры благодаря упрощенной системе управления и объединения серверов, а также создать условия для повышения производительности труда разработчиков.

В данный момент параллельно развиваются две ветки Apache — версии 2.0 и 1.3. Вторая версия претерпела значительное количество изменений, которые в первую очередь коснулись ядра программы и некоторых важных модулей [22].

Apache — это полнофункциональный, расширяемый web-сервер, полностью поддерживающий протокол HTTP/1.1 и распространяющийся с открытым исходным кодом. Сервер может работать практически на всех распространенных платформах. Существуют готовые исполняемые файлы сервера для Windows, OS/2, Netware и нескольких UNIX-систем. При этом он очень прост в установке и конфигурации.

Apache настраивается с помощью текстовых конфигурационных файлов. Основные параметры уже настроены «по умолчанию» и будут работать в большинстве случаев. Если не хватает функциональности штатного Apache, то стоит присмотреться к распространяемым модулям, написанным Apache Group и сторонними разработчиками. Немаловажным преимуществом является то, что создатели активно общаются с пользователями и реагируют на все сообщения об ошибках.

Самая простая функция, которую может выполнять Apache — обслуживать обычный HTML-сайт. При получении запроса на определенную страницу сервер отправляет в ее ответ браузеру.

Функция, которая заложена в протоколе HTTP/1.1 — аутентификация пользователей. С помощью штатных средств сервера Apache вы можете разграничить доступ к определенным страницам сайта для разных пользователей. Это нужно, например, для того чтобы сделать администраторский интерфейс к сайту. Для этого используются файлы.htaccess и.htpasswd, а также модули mod_auth и mod_access. Пользователи могут быть разбиты на группы, и для каждой из них можно назначить свои права доступа.

Для разделения дизайна и функциональной части сайта, а также для упрощения изменения статических объектов существует технология SSI. Она позволяет поместить всю повторяющуюся информацию в один файл (например, top.inc), а затем вставлять в страницы ссылку на нее. Затем, если понадобится изменить несколько строк в этой информации, то придется поменять их только в одном файле. Сервер Apache поддерживает эту технологию и позволяет использовать серверные включения в полном объеме.

Если на одном сервере с установленной операционной системой семейства Unix и сервером Apache заведено несколько пользователей, то каждому из них можно создать отдельную директорию. Точнее, она будет создаваться автоматически вместе с псевдонимом. Это делается с помощью модуля mod_userdir и директивы UserDir. Так, например, можно папке public_html в домашней папке пользователя сопоставить адрес www.site.ru/

user. Администратор сервера может разрешить или запретить определенным пользователям создавать домашние страницы, использовать SSI и другие функции сервера. Полноценный же хостинг обычно предусматривает создание отдельного виртуального сервера для каждого пользователя.

Сервер Apache был одним из первых серверов, которые начали поддерживать виртуальные сервера (хосты). Эта возможность позволяет размещать на одном физическом сервере несколько полноценных сайтов. У каждого из них может быть свой домен, администратор, IP-адрес и так далее.

Если нужно разместить на сервере домены domain.ru и domain.com, то для начала надо сделать так, чтобы в системе DNS им был сопоставлен ваш IP-адрес. После этого в конфигурационном файле Apache создаете две директивы , где описываете каждый виртуальный хост. Таким образом, сервер будет знать, на какую папку «отправлять» пришедший запрос.

В данный момент большинство интернет-страниц являются динамическими. Это значит, что их внешний вид и наполнение формируется с помощью программного скрипта, написанного на одном из «языков» (их нельзя в полной мере назвать языками, определение достаточно условно). В данный момент наиболее сильно распространены технологии CGI и PHP. Разумеется, в Apache существует поддержка и того, и другого, плюс возможность подключать другие языки.

Модуль mod_cgi позволяет размещать на сервере CGI-скрипты. Вообще, это исполняемые файлы, написанные на одном из допустимых языков программирования. Они могут содержаться как в откомпилированном виде (например, так делают, если пишут CGI на языке C++), так и в виде исходного текста (если на сервере установлен Perl, то программист может помещать и такие файлы. Иногда они имеют расширение.pl).

Что касается PHP, то возможность интеграции его в Apache предусмотрена разработчиками самого PHP. Apache же выполняет только функции посредника между скриптом и компилятором. Существует два способа интеграции PHP в Apache. Первый — установка специального модуля, расширяющего возможности сервера, и тогда он сам становится способным «компилировать» скрипты. И второй — установка в конфигурационных файлах связей между php-файлами и самим компилятором (он находится на диске в виде файлов.cgi или.exe).

На основе сервера Apache можно создавать не только простые любительские сайты, но и ресурсы, требующие серьезной криптографической защиты передаваемых данных. Специально для этого был разработан протокол SSL/TLS, а его поддержка была встроена в Apache 2.0. С помощью специального модуля можно осуществлять аутентификацию на основе именных сертификатов, что позволяет практически наверняка гарантировать подлинность пользователя.

Сервер Apache может вести протокол всех действий, совершаемых с ним. Причем администратор может сам выбрать степень подробности протокола. Протоколы ведутся отдельно для ошибок, для успешных операций и для каждого виртуального хоста.

Russian Apache это программный продукт, за основу которого был взят популярный HTTP-сервер Apache. К нему была добавлена функциональность, необходимая для корректной поддержки нескольких кодировок кириллицы одновременно, что потребовало внесения добавлений в основной код Apache.

Наиболее простым и эффективным приемом применения Apache в связке с Oracle является использование программного продукта Zend Core.

Набор инструментов для развертывания, запуска и обслуживания критически важных для бизнеса PHP-приложений и сервисов, способных взаимодействовать с базами данных от ведущих производителей.

Zend Core базируется на версии PHP 5.2 и предлагает множество инноваций, позволяющих повысить надежность и эффективность создаваемых приложений.

Zend Core теперь сертифицирована для Windows Server 2008, давая возможность развертывания высокоэффективным приложениям на новой серверной платформе.

Пользователи по достоинству оценят расширенную поддержку баз данных, более тесную интеграцию с операционной системой Windows и другие усовершенствования. Сервис обновлений Zend Network Updater упростит установку доступных исправлений и патчей.

· Linux SLES V9 & V10 on IBM pSeries (Zend Core for IBM only)

· Linux RHEL V4 & V5 on IBM pSeries (Zend Core for IBM only)

· Windows XP & 2003 (32 bit), Vista (32 & 64 bit)

· IBM AIX V5.2 & V5.3 on IBM pSeries (Zend Core for IBM only)

· Solaris V8, V9 & V10 on Sparc (Zend Core for Oracle only)

· i5/OS V6R1, V5R3 & V5R4 (Zend Core for i5/OS only)

Поддержка баз данных:

· DB2, DB2 Express-C, Informix

· Oracle Database 10g, 9i

· Apache 2.0.x (compiled in prefork mode only)


· Apache 2.2.x (compiled in prefork mode only)

· Oracle HTTP Server (Zend Core for Oracle only)

· i5/OS HTTP Server (Zend Core for i5/OS only)

Поддержка PHP IDE:

· Zend Studio v5.5

· Zend Studio for Eclipse V6.0

· Zend Studio for i5/OS v5.5

· Zend Studio for Eclipse i5 Edition v6.0

Выбор связок «сервер+технология»

Классический вариант, подходит для большинства сайтов, обычно служит для создания Интернет-проектов среднего уровня сложности. Не обладает возможностями низкоуровневого доступа. Достаточно медленно работает на больших проектах. Затруднена отладка. В стандартной установке имеет большое количество типовых функций и библиотек. ООП полностью не поддерживает.

Универсальный вариант, подходит для создания интернет проектов низкого уровня сложности. Функциональность зависит от выбора языка программирования, на котором будет написано приложение, работающее через CGI-шлюз. Обеспечивает высокую производительность, особенно при использовании интерпретатора Perl. Типовые функции и библиотеки обеспечиваются выбранным языком программирования. С увеличением объёма проекта значительно повышается сложность написания программы и количество потребляемого трафика и оперативной памяти сервера, так как для каждого обращения к сайту запускается отдельная копия приложения.

Выбор среды разработки

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

IBM Visual Age for Smalltalk

IBM Visual Age for Smalltalk (далее VA Smalltalk) является наиболее мощной реализацией чистого объектно-ориентированного языка Smalltalk. Он предназначен для проектирования прикладного программного обеспечения разных масштабов: от автоматизации работы на мелких фирмах до транснациональных корпораций и охватывает все направления современного бизнеса: производство, банковское дело, финансы, страхование и т.д.

Семейство сред визуального программирования IBM Visual Age, частью которого является Smalltalk, предоставляет самую широкую и мощную поддержку языков и платформ, обеспечивая единую среду визуального программирования. Все это позволяет пользователям выбрать язык, который они сочтут более приемлемым: Java, Smalltalk, C++, Basic, Cobol, 4GL для тех аппаратных платформ, операционных сред и серверного программного обеспечения, которое используется в организациях. Все продукты интегрированы и являются кросс-платформенными.

VA Smalltalk дает возможность работать с различными серверами баз данных, мониторами транзакций, промежуточным коммуникационным программным обеспечением, с программным обеспечением на мэйнфреймах; поддерживается возможность построения информационных систем для Internet/ Intranet — сетей; может быть обеспечена возможность коллективной разработки; поддерживается контроль версий и изменений при ведении проекта. Перенос приложений с платформы на платформу можно осуществлять без редакции исходного кода.

Замечательная черта сред Visual Age — визуальная сборка приложений из компонент, которые создаются единожды, а затем используются в различных частях проекта. Этап сборки реально, в отличии от других средств RAD (Rapid Application Development — средство быстрой прикладной разработки), может происходить без ручного кодирования. Что еще более важно, логические взаимосвязи между компонентами системы представляются визуально, что существенно облегчает ведение проекта на протяжении всего его жизненного цикла.

В новой версии Visual Age Smalltalk 4.5, которая появляется на рынке в конце лета текущего года, добавляются, в том числе UML Designer, служащий для автоматизации анализа и проектирования программного обеспечения, и ObjectExtender, облегчающий создание сложных масштабируемых программ, использующих различные СУБД. Основное внимание при ведении проекта с появлением новых возможностей переносится на этапы анализа и проектирования, осуществляемые в соответствии с парадигмой объектно-ориентированного проектирования, наиболее полной реализацией которой является UML (Unified Modeling Language). При этом существует двусторонняя связь между модулями проектирования и полученным / измененным кодом. Все это позволяет, используя среду VA Smalltalk, реализовывать полный жизненный цикл информационной системы.

К сожалению, Smalltalk практически неизвестен российским специалистам. Возможно, одной из причин этого, является отсутствие сколько-нибудь заметного числа публикаций. В тоже время, на Западе, в особенности в США, он является наряду с C++ распространенным средством разработки прикладного ПО, лидируя при этом в отдельных прикладных областях (см., например, IDC White Paper: Smalltalk Strength Stand Out).

Microsoft Visual Studio 2003

Набор средств разработки Microsoft Visual Studio 2003, сопутствующая ему платформа разработки приложений Microsoft.NET Framework и подписка MSDN — ключевые элементы стратегии Microsoft Open Tools Platform по разработке приложений и дальнейшего развития комплекса Web-сервисов на основе XML [23]. Visual Studio 2003 и.NET Framework — краеугольные камни платформы.NET и важный этап реализации стратегии Microsoft в отношении Web-сервисов XML []. С появлением.NET Framework линейка поставляемых средств разработки Microsoft разделилась на 2 группы: пакеты продуктов (интегрированные системы разработки) и отдельно взятые инструменты разработки.

Интегрированная система разработки Visual Studio поставляется как в виде коробочных версий, так и по программам корпоративного лицензирования.

Visual Studio — первая полностью интегрированная среда разработки для создания Web-сервисов XML и Internet-приложений, предлагающая разработчикам в сочетании с.NET Framework новые перспективные возможности для быстрой разработки (rapid application development, RAD) и развертывания самых разнообразных Web-приложений для любых устройств и платформ.

Macromedia Dreamweaver CS3

Промышленный стандарт для разработки web-приложений, позволяющий пользователям эффективно проектировать, разрабатывать и поддерживать web-сайты и приложения.

Решение Adobe Dreamweaver CS3 предлагает мощные средства для работы с программным кодом и удобные визуальные инструменты, позволяющие создавать приложения в кратчайшие сроки. При разработке приложений почти невозможно добиться полной совместимости используемых тэгов, атрибутов и конструкций CSS с различными типами браузеров. Теперь эти сведения встроены в продукт Dreamweaver. Сконцентрируйте внимание на творческом процессе, а продукт Adobe Dreamweaver сделает всю остальную работу.

С Macromedia Dreamweaver CS3 разработчики получают возможность создания и сопровождения сайтов и приложений, поддерживающих самые современные технологии и алгоритмы. Новые возможности и средства оптимизации уменьшают время, необходимое для рутинных задач. Одна из главных особенностей данного релиза — это фокус на упрощении ключевых моментов процесса разработки и верстки. Если вы хотите начать изучение каких-либо технологий, подобных Ajax и использованием CSS, автоматическим нахождение CSS-багов в браузерах, значит этот релиз несет в себе все для вас необходимое.

Smart Web Builder 1.531

Подсветка синтаксиса языков программирования (Assembler, ASP, Bat, C++, CORBA IDL, CSS, Html, Ini, Java, JavaScript, Pascal, Perl, PHP, Python, SQL, Tcl/Tk, UNIX Shell, VBScript, XML). › Подсветка парных скобок. Расширенный поиск и замена (поддержка регулярных выражений). Удобный подбор цвета в трёх шкалах (RGB, HSV, CMYK). Экспорт исходного кода в Html, RTF, TeX с учётом подсветки синтаксиса.

› Суфлёр кода JavaScript и Html.

› Оптимизация и проверка html-кода.

› Диалоги конфигурирования и вставки html-тегов.

› Быстрая вставка всех основных тегов html.

› Вставка html-кодов символов.

› Бесплатные скрипты для web-страниц.

› Просмотр редактируемой web-страницы в различных браузерах и под сервером.

› Создание и управление проектами.

› Импорт проектов из других редакторов.

HTML-редактор предоставляет пользователю:

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

Мощные сервисные средства и инструменты вставки HTML-кода, делающие процесс создания web-страниц быстрым, качественным и функциональным. Далее будут рассматриваться именно эти возможности редактора.

Внушительное количество готовых к использованию скриптов и шаблонов страниц уменьшающих ресурсоёмксть разработки.

Менеджер сайтов, который позволяет создать проект и с удобством управлять им. Благодаря высокой скорости загрузки может быть обеспечена работа с большими проектами, от 1000 файлов и более.

Smart Web Builder включает в себя удобную справочную систему. Команда Справка>Справка вызывает окно Справка, в котором в разделе Главное меню представлена информация о работе каждого пункта меню. Команда Справка>Справочники вызывает диалоговое окно Справочники, в котором представлена информация о большинстве тэгов языка HTML, их назначении, атрибутах и событиях, которые могут происходить с объектом, заключенным в конкретный тэг.

Проанализировав все вышесказанное, решено было использовать следующее программное обеспечение:

§ среда разработки — Smart Web Builder 1.531;

§ сервер приложений — Zend Core For Oracle v2.5 (PHP Version 5.2.5);

§ технологии программирования — AJAX.

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

Сравнение различных технологий создания и использования web-сервисов

Изучение создания web-сервисов средствами MS Visual Studio.NET и Java. Развертывание web-сервисов и WSDL-файла на серверах IIS и Apache Axis путем копирования файлов. Использование описаний WSDL. Разработка клиентского приложения под управлением Axis.

Рубрика Программирование, компьютеры и кибернетика
Вид курсовая работа
Язык русский
Дата добавления 28.09.2020
Размер файла 1,8 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

Сравнение различных технологий создания и использования web-сервисов

Григорьева Елена Евгеньевна

Допущена к защите

д.ф.м.н., профессор Терехов А.Н.

к.ф.м.н., доцент Графеева Н.Г.

1. Постановка задачи

2. Реализация приложения «Управление проектами»

3. Введение в web-сервисы

4. Создание web-сервисов средствами MS Visual Studio .NET

4.1 Создание Web-сервиса

4.2 Развертывание web-сервисов на сервере IIS


4.2.1 Развертывание web-сервисов путем копирования файлов на web-сервер

4.2.2 Развертывание web-сервисов при помощи установочной программы

4.3 WSDL описание сервиса

5. Создание web-сервисов средствами Java

5.1 Создание web-сервиса для Axis

5.2 Развертывание web-сервиса на сервере Apache Axis

5.3 Использование описаний WSDL

5.3.1 Создание WSDL-файла по классу Java

5.3.2 Создание web-сервиса по WSDL-файлу

6. Использование web-сервисов

6.1 Создание клиента web-сервиса, используя Visual Studio .NET

6.2 Создание клиентского приложения под управлением Axis

7. Сравнение технологий по созданию и использованию web-сервисов

7.1 Архитектура платформ Java и .Net

7.2 Инструментальные средства по созданию и использованию web-сервисов

7.3 Серверы Apache и IIS

7.4 Сравнение трудоемкости

7.5 Сравнение времени работы и устойчивости web-сервисов

Список используемой литературы

1. Постановка задачи

Реализовать систему «Управление проектами» для осуществления автоматизированной поддержки процессов планирования и управления деятельностью по созданию новых проектов. Данное приложение представляет собой web-приложение с возможностью управления деятельностью проекта несколькими пользователями.

· Добавление/удаление/редактирование ответственных за проект.

· Добавление/удаление/редактирование задач/групп задач для данного проекта

· Определение сроков выполнения каждой задачи

· Выставление готовности задачи

· Выбор ответственного за выполнение каждой задачи

· Необходимые затраты на задачу

· Просмотр статуса готовности проекта в целом в виде диаграммы в Excel документе.

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

На основе базы данных приложения «Управление проектами» создать web-сервисы, предоставляющие данные созданных проектов. Web-сервисы создать при помощи различных технологий и на разных платформах.

1. Создание web-сервисов средствами Java.

1.1 Создание web-сервиса для Axis.

1.2 Развертывание web-сервиса на сервере Apache Axis.

1.3 Использование описаний WSDL

2. Создание web-сервисов средствами MS Visual Studio .NET

2.1 Создание web-сервиса

2.2 Развертывание web-сервисов на сервере IIS.

2.2.1 Развертывание web-сервисов путем копирования файлов на web-сервер

2.2.2 Развертывание web-сервисов при помощи установочной программы.

2.3 WSDL описание службы

По созданным web-сервисам провести сравнение различных технологий, выделить сильные стороны каждой технологии.

· простота создания(затраченное время)

Серверы Apache и IIS

· Время отклика web-сервиса

· Время выполнения запроса

· Возможность выполнять множество запросов одновременно.

На основе проведенных сравнений сделать выводы.

Цель: файл web сервер java

На основе выводов сравнения различных технологий по созданию и использованию web-сервисов, предоставить полезную информацию разработчикам, желающим реализовать и развернуть свои web-сервисы. Вооружившись этой информацией, можно понять какую технологию лучше использовать.

В настоящее время рынок программных продуктов по управлению проектами активно развиваться, появляются новые прикладные программы и расширяются функциональные возможности прежних. Причем предлагаемые программные продукты решают практически один и тот же спектр задач и схожими методами.

К программам, позволяющим автоматизировать проектный бизнес, относятся:

Office Project Professional программа, позволяющая координировать деятельность рабочих групп, а также управлять работой над проектами, расписанием и финансовыми операциями.

OpenProj— программа, предназначенная для планирования проектов на основе построения диаграмм Ганта и диаграмм типа диаграмм типа PERT. Поддерживается импорт/экспорт документов Microsoft Project. Распространяется бесплатно.

Open Plan — программа для планирования и контроля реализации проектов. Есть распределение ролей: руководители (анализ хода выполнения всех проектов компании), функциональные менеджеры ( руководители подразделений ), менеджеры проектов.

Но все эти приложения могут работать только локально на одном компьютере, они не реализованы, как web-приложения. Кроме того Office Project Professional и Open Plan — это платные продукты. OpenProj бесплатный продукт, но в нем нет разграничения ролей и прав действий для каждой роли.

2. Реализация приложения «Управление проектами»

Система «Управление проектами» реализована как web-приложение, используя MS Visual Studio.Net. Web-технология предоставляет улучшенный доступ к данным и кооперация между пользователями. Возможности работы через Internet является достоинством для системы управления проектами. В данной системе реализована возможность управления проектом несколькими пользователями.

В приложении можно выделить следующие модули:

· Диаграмма готовности проекта(диаграмма, показывающая готовность проекта в целом и готовность каждой задачи в отдельности)

Соответственно, у каждого модуля есть возможности действий:

В зависимости от роли в проектной команде, участникам проекта предоставляется доступ к различной модулям с определенными правами действия. Коллективная работа в проектах регламентируется заданием прав доступа, которые определяют уровень доступа пользователей, как к функционалу системы, так и к самим данным проектов.

В приложении есть 3 роли пользователей:

· Администратор. Данной роли доступны все модули со всеми правами доступа.

· Руководитель проекта. Данной роли доступны модули: проекты(только те, где данный пользователь является руководителем),задачи, сотрудники, диаграмма готовности проекта со всеми правами действий

· Сотрудник. Данной роли доступны следующие модули:

проекты(только те, где он принимает участие) с правом действия «просмотр» задачи с правом доступа «просмотр» для всех задач проекта и правом «редактирование/удаление» только для задач, где данный пользователь является ответственным за задачу.

Диаграмма готовности проекта

Реализация разграничения прав доступа для ролей


Любой пользователь может зарегистрироваться в системе и стать администратором своих проектов. Ему автоматически приписывается роль «Администратор».

Далее администратор может добавлять руководителей проектов. При этом он заполняет поля: Фамилия имя, email. Далее на данный email приходит письмо с приглашением зарегистрироваться на данном сайте и информацией о проекте, в котором его назначили руководителем. Ссылка, по которой пользователю предлагают зайти и зарегистрироваться формируется как hash код, идентифицирующий данного участника проекта. После прохождения данным участником регистрации, он становится пользователем системы с ролью «Управляющий».

Далее уже управляющий проектом может зайти под своим логином/паролем и администрировать свой проект.

Сотрудники проекта, отвечающие за задачу, добавляются по аналогичному принципу. Пользователь с ролью «Сотрудник» может администрировать свои задачи.

Описание работы приложения «Управление проектами».

1. Внешний вид приложения.

Система представляет собой web-приложение с интерфейсом.

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

Главное меню приложения

Главное меню системы отображается в левой части экрана и включает в себя следующие пункты:

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

Новый проект. Данный пункт меню позволяет добавлять новый проект.

Руководители проектов. Данный пункт меню позволяет просматривать список, добавлять, удалять и редактировать руководителей проектов.

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

Выход. Данный пункт меню позволяет выйти из системы.

При выборе проекта в левой части экрана отображается меню проекта.

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

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

Новая задача. Данный пункт меню позволяет добавлять новую задачу для данного проекта.

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

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

Работа с системой.

Зайдите на сайт системы. На экране отобразится форма для ввода имени пользователя и пароля. Введите имя пользователя и пароль в соответствующие поля.

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

Если пользователь еще не зарегистрирован, он может это сделать, зайдя на страницу регистрации.

Работа с проектами.

В данном разделе пользователь может

· Редактировать список руководителей проектов;

· Редактировать список проектов.

Форма добавления/редактирования проекта

Руководитель проекта выбирается из списка руководителей проекта, добавленных данным пользователем.

Форма добавления/редактирования руководителей проекта

Работа с выбранным проектом

Далее представлены основные приемы работы с приложением в рамках конкретного проекта.

Просмотр списка сотрудников доступен из левого меню проекта.

В этом разделе пользователь может добавлять, редактировать, удалять сотрудника.

Форма добавления/редактирования сотрудника

Просмотр списка задач доступен из левого меню проекта.

В этом разделе пользователь может добавлять, редактировать, удалять задачи и группы задач данного проекта.

Форма добавления/редактирования задачи

На странице «Диаграмма» пользователь может визуально посмотреть насколько готова каждая из задач. Также пользователь может просмотреть эту диаграмму в Excel документе

Просмотр диаграммы в Excel документе

Введение в web-сервисы

Web-сервисы появились как решение, позволяющее стандартным способом получать необходимые данные, без какого-либо специально для этого созданного программного или аппаратного обеспечения.

Web-сервис (англ. web service) — программная система, идентифицируемая строкой URI, чьи общедоступные интерфейсы определены на языке XML. Описание этой программной системы может быть найдено другими программными системами, которые могут взаимодействовать с ней согласно этому описанию посредством сообщений, основанных на XML, и передаваемых с помощью интернет-протоколов.

Официальный документ фирмы Sun определяет web-сервис следующим образом:

Web-сервис — это приложение, которое получает запросы от других систем через интернет, используя для этого коммуникационные технологии, независимые от платформы и поставщика.

В документе «Defining the Basic Elements of .Net» Microsoft определяет web-серввис так:

Web-сервисы, основанные на XML, служат для обмена данными между приложениями, и что более важно, позволяют вызывать другие приложения независимо от того, как эти приложения устроены, на какой платформе они работают и какие устройства используются для доступа к ним.

Из этих определений следует вывод: Sun и Microsoft соглашаются друг с другом по поводу определения web-сервиса.

Технология Web Services создана для того, чтобы объединить компьютерный мир. Эта технология отказалась от упаковки и сжатия информации и предлагает прямо противоположный подход — по сети посылается простой «плоский» текст, записанный в байтовой кодировке ASCII, Latin I, СР866, СР1251, KOI-8 или в кодировках Unicode: UTF-8, UTF-16. Этим сразу решается проблема переносимости сетевой информации — любой сервер легко прочитает обычный текст. Для выявления структуры пересылаемых документов их записывают на языке XML (Extensible Markup Language, расширяемый язык разметки). Это не сужает область распространения документов, поскольку любой сервер в состоянии понять язык XML. Надо сделать только одно -стандартизировать структуру документа XML. Для этого в технологии Web Services разработан специальный протокол SOAP (Simple Object Access Protocol). Сообщение, записанное на языке XML по правилам протокола SOAP, может принять и обработать любой web-сервис, на каком бы языке программирования он ни был написан, и в какой бы операционной системе он ни работал.

Технология Web Services не остановилась на создании единого протокола пересылки сообщений. Она создала и средства описания web-сервиса. Сервер, на котором установлен web-сервис, предоставляет всем желающим его описание. Описание выполняется на специально разработанном языке WSDL (Web Services Description Language, язык описания web-сервисов). Это еще одна реализация языка XML. Клиент, обращающийся к web-сервису, читает его описание и формирует свой запрос. Разработаны программы, которые по готовому web-сервису создают его описание на WSDL. Также есть программы, создающие, наоборот, web-сервис по его описанию, сделанному на языке WSDL.

Для того чтобы клиент не обшаривал весь Интернет в поисках нужного web-сервиса, создаются реестры, хранящие информацию о местоположении web-сервиса вместе с описанием предоставляемых ими услуг. Правила регистрации web-сервиса в реестре, а также правила хранения информации в реестре определяются еще одной реализацией XML -спецификацией UDDI (Universal Discovery, Description and Integration). Клиенту достаточно обратиться к реестру, найти в нем подходящий web-сервис, выбрать из реестра контактную информацию web-сервиса и запросить у него нужные услуги.

Основные преимущества web-сервисов:

· Веб-сервисы обеспечивают взаимодействие программных систем независимо от платформы.

· Веб-сервисы основаны на базе открытых стандартов и протоколов. Благодаря использованию XML достигается простота разработки и отладки web-сервисов.

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

3. Создание web-сервисов средствами MS Visual Studio .NET

Создание Web-сервиса

1. Запустите Visual Studio .NET

2. В меню File щелкните New Web Site.

3. Выберите ASP.NET Web Service, в поле Location введите имя и адрес web-сервиса, и щелкните ОК.

Содержимое нового проекта отображается в окне Solution Explorer

В окне Solution Explorer можно переименовать файл Service1.asmx , изменив имя web-сервиса на более подходящее.

Чтобы добавить к web-сервису необходимую функциональность, щелкните правой кнопкой на файл Service1.asmx и выберите команду View Code — откроется окно, в котором можно писать и редактировать код web-сервиса.

Понятие разделения кода при программировании web-сервисов подразумевает отделение директивы WebService от кода С#. Таким образом, asmx-страница содержит только одну строку — директиву WebService, а исходный код находится на отдельной странице, которая при использовании языка С# имеет расширение asmx.cs. Указанная страница должна быть скомпилирована в сборку и помещена в папку \bin web-сервиса (Visual Studio .NET делает это автоматически).

При первом запросе к web-сервису ASP .NET на основании директивы WebService ищет имя соответствующего файла класса. Сборка со скомпилированным классом должна располагаться в папке \bin проекта. Если в этой папке содержится множество сборок, в поисках соответствующего класса ASP .NET будет просматривать каждую из них.

Одно из преимуществ хранения кода в скомпилированном виде заключается в том, что злоумышленнику, стремящемуся получить доступ к серверу, где хранится ваше приложение, не так-то просто будет получить исходный код. А недостаток метода разделения кода состоит в необходимости выполнения при развертывании службы дополнительной операции — компиляции исходного кода.


Поскольку в Visual Studio .NET используется модель разделения кода, простая отправка исходных страниц на web-сервер, как в случае web-сервиса, созданного вручную, невозможна. Если же вы попробуете ее осуществить, при попытке получить доступ к службе будет сгенерирована ошибка. Вместо этого следует сохранить asmx-страницу на сервере, скомпилировать исходный код и поместить результат в папку \bin проекта. При построении проекта VS .NET автоматизирует описанный выше процесс.

По завершении разработки приложения необходимо выбрать команду Build Solution из меню Build, после чего VS .NET скомпилирует web-сервис и передаст asmx-страницу и сопровождающую ее скомпилированную сборку на web-сервер. Среда VS .NET отобразит результаты компиляции в панели Output, которая расположена в нижней части окна. Если не возникло никаких ошибок компиляции, то web-сервис готов к использованию.

Пример кода веб-сервиса с одним веб-методом, возвращающим данные из таблицы Proects MS SQL server базы данных Proect.

public class Service : System.Web.Services.WebService

private static String ConnectionString = @»Data

SqlConnection conn = new SqlConnection(ConnectionString);

public DataSet GetProects()

string command = «select * from Proects»;

SqlCommand cmd = new SqlCommand(command, conn);

DataSet ds = new DataSet();

SqlDataAdapter da = new SqlDataAdapter(cmd);

Настройка IIS

17.04.2008, 17:09

Настройка IIS
После полной установки XP с IIS в браузере не виден localhost. Пишет что нет прав для просмотра.

Настройка IIS
Ребята вобщем есть IIS на нем крутится основной сайт. Но есть MDaemon — у него есть web-интерфейс.

Настройка IIS
Никак не могу настроить в IIS localhost. Где в Internet Services прописывается host, port и т.п.

настройка IIS
Народ, помогите, пожалуйста! Я на IIS 6.0 поставил php 5.1.4. Всё работает прекрасно за.

Настройка IIS с помощью VBS или JS
Доброго времени суток всем. Мне необходимо настраивать доступ к сайту с помощью VBS или JS.

17.04.2008, 17:19 2

Быстрая установка узла с помощью IIS

IIS создает используемые по умолчанию веб- и FTP-узлы при установке Windows 2000 Server. Этот раздел описывает опубликование сведений на этих узлах, используемых по умолчанию.
Чтобы опубликовать содержимое на веб-узле

1. Создайте домашнюю страницу для вашего веб-узла. Дополнительные сведения о средствах создания веб-узла см. в разделе Выбор средства разработки.
2. Назовите файл домашней страницы Default.htm или Default.asp.
3. Скопируйте домашнюю страницу в каталог веб-публикаций, используемый IIS по умолчанию. Используемый по умолчанию каталог веб-публикаций называется также домашним каталогом. Программа установки создает домашний каталог \Inetpub\Wwwroot.
4. Если в сети имеется система определение адресов по именам, посетителям для попадания на узел будет достаточно ввести имя вашего компьютера в строку адреса в веб-обозревателе. Если в сети не действует система определения адресов, то посетители должны ввести цифровой IP-адрес компьютера.

Чтобы опубликовать содержимое на FTP-узле

1. Скопируйте или переместите файлы в домашний каталог узла FTP, используемого по умолчанию. Программа установки по умолчанию создает домашний каталог \Inetpub\Ftproot.
2. Если в сети имеется система определение адресов по именам, посетителям для попадания на узел будет достаточно ввести ftp:// с последующим именем вашего компьютера в строку адреса в веб-обозревателе. В противном случае посетители должны ввессти ftp:// и цифровой IP-адрес компьютера.

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

1. В оснастке IIS выберите компьютер или узел и нажмите кнопку Действие.
2. Нажмите кнопку Создать, а затем Веб-узел или FTP-узел для вызова мастера узла.
3. Следуйте инструкциям на экране для присвоения новому узлу идентифицирующей информации. Необходимо предоставить адрес порта и путь к домашнему каталогу. Если дополнительные узлы добавляются к одному IP-адресу с помощью имен заголовков узлов, необходимо присвоить имя заголовка узла.

Примечание. В мастере узла Значения не присвоены ссылается на IP-адреса, которые назначены компьютеру, но не назначены определенному узлу. Веб-узел, используемый по умолчанию, использует все IP-адреса, не назначенные другим узлам. Только один узел может использовать не назначенные IP-адреса.

Настройка веб-сервера IIS, часть 1

Internet Information Services (IIS) это набор интернет-серверов от компании Microsoft. Основным компонентом IIS является веб-сервер, хотя этим дело не ограничивается. Последняя восьмая версия IIS поставляется со всеми редакциями Windows Server 2012 R2.

Несмотря на проприетарность IIS, доля этого набора сервисов на рынке постепенно увеличивается. В интернете можно отыскать множество сакральных споров, что же всё таки лучше — IIS, Apache или, скажем, Nginx. Не будем им уподобляться, просто скажем в каких случаях в основном используется IIS.

Самый удобный вариант использования IIS — когда всё ваше рабочее окружение (и серверная его часть тоже) работает на Windows. В таком случае Вы можете получить от IIS ряд удобных «плюшек» для работы в домене. В конце концов, ведь IIS это еще и FTP-сервер, и почтовый сервер. Интерфейс IIS довольно нагляден, что вообще свойственно Windows-среде. Ну и, конечно, IIS пригодится вам, если вы используете MS SQL.

Для включения IIS в Windows Server 2012 R2 зайдите в Диспетчер серверов.

В Диспетчере серверов найдите пункт «Добавить роли и компоненты».

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

Убедитесь, что у Вас включен CGI.

После этого в разделе Администрирование у Вас появится Диспетчер служб IIS.

Вы можете так же включить IIS в Windows 7 Профессиональная и Максимальная, а также в Windows 8. Для этого перейдите в Панель управления → Программы → Включение или отключение компонентов Windows.

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

Справа перечислены сервера и сайты. По умолчанию на системном разделе создается папка inetpub, в которой находятся папки ftproot и wwwroot для FTP-серверов и веб-сайтов соответственно.

Установка PHP на IIS

Для установки PHP перейдите по ссылке и скачайте ZIP-архив с версией Non Thread Safe. Обозначение VC11 возле версии обозначает, что для её компиляции необходим Visual C++ Redistributable for Visual Studio 2012. Для старых версий, маркированных как VC9, требуется Visual C++ Redistributable for Visual Studio 2008 SP1.

Директорию для распаковки ZIP-архива можно выбрать по своему усмотрению. После извлечения архива создайте копию файла php.ini-production под именем php.ini в той же папке.

Файл php.ini содержит правила исполнения PHP и работы с окружением, в котором он исполняется. Есть ряд обязательных параметров, которые должны быть прописаны. Ниже список этих параметров.

extension_dir = [путь к директории расширений] — этот параметр отвечает за расположение расширений PHP. Например, C:\php\ext.

extension = xxxxx.dll — для каждого подключаемого расширения необходимо прописать такую директиву. Такие расширения будут подгружаться при старте PHP.

log_errors = On — включение лога ошибок.

error_log = [путь к файлу лога ошибок] — собственно, тут всё понятно.

cgi.force_redirect = 0 — отключение механизма защиты директорий, под IIS данный параметр должен принимать именно такое значение во избежание ошибок ядра PHP в Windows.

cgi.fix_pathinfo = 1 — включение поддержки PATH_INFO согласно спецификации CGI. IIS FastCGI использует эту настройку.

fastcgi.impersonate = 1 — включение идентификации маркеров безопасности вызывающего клиента.

fastcgi.logging = 0 — логи FastCGI в IIS необходимо отключить.

Далее в свойствах системы необходимо откорректировать переменные среды. В Windows Server 2012 R2 необходимо зайти в Панель управления, выбрать пункт Система, там Дополнительные параметры системы. На вкладке Дополнительно внизу находится кнопка Переменные среды.

Среди системных переменных находим переменную Path и в поле Значение переменной дописываем путь к каталогу PHP. В моем примере это C:\php.

Теперь нам необходимо указать в IIS как же обрабатывать php-файлы. Для этого заходим в пункт сопоставление обработчиков.

На панели действия щелкните по пункту Добавить сопоставление модуля и заполните в соответствии с тем, что видите на рисунке.

В поле исполняемого файла прописываете тот путь, куда был разархивирован PHP.

Проверим работу PHP. Для этого создаем файл index.php со следующим содержимым:

Если всё сделано правильно, то, набрав в адресной строке браузера http://localhost/index.php, Вы увидите следующую милую картинку:

Во второй части статьи поговорим о MySQL и phpMyAdmin.

Установка IIS на Windows Server

Узнайте, как установить службу Internet Information Services (IIS) на серверы с операционными системами Windows Server 2012 R2 и Windows Server 2008 R2.

IIS (Internet Information Services) — набор сервисов от компании Microsoft для работы веб-сервера и других интернет служб. IIS устанавливается на сервер и работает с протоколами HTTP/HTTPS, POP3, SMTP, FTP, NNTP. В 2015 году была выпущена 10 версия IIS, разработанная под Windows Server 2020.

Установка IIS на Windows Server 2008

Обратите внимание, что по умолчанию не устанавливаются такие сервисы, как ASP.NET , фильтры ISAPI и др.

Нажмите «Установить» (Install) для начала установки. Запустите «Диспетчер серверов» (Server Manager) и откройте вкладку «Роли» (Roles) > «Веб-сервер IIS» (Web Server IIS) > «Диспетчер служб IIS» (Internet Information Services Manager).

Возможности, доступные вам в службе IIS, перечислены в диспетчере служб IIS. Отсюда управляйте возможностями IIS, настраивайте и перезапускайте.

Сразу после установки IIS по умолчанию создается пустой сайт Default Web Site .

Проверьте работу сайта по умолчанию, набрав в адресной строке браузера localhost .

Загрузится страница, созданная по умолчанию.

Добавьте сайты, которые будут обслуживаться этим веб-сервером.

В контекстном меню пункта «Сайты» (Sites) на вкладке «Подключения» (Connections) выберите «Добавить сайт» (Add Web Site) Заполните поля формы данными о сайте и нажмите ОК.

В списке сайтов IIS появится только что добавленный.

Установка IIS на Windows Server 2012 R2

Тоже самое можно сделать через панель «Локальный сервер» (Local Server) — «Управление» (Manage).

Запустится мастер установки IIS, ознакомьтесь с первой страницей и нажмите «Далее» (Next). Выберите тип установки «Установка ролей или компонентов» (Role-based or feature-based installation) и нажмите «Далее» (Next). Выберите сервер из пула серверов (Select a server from the server pool) и отметьте имя вашего сервера. Нажмите «Далее» (Next). На странице выбора ролей сервера отметьте «Веб-сервер IIS» (Web Server IIS). Оставьте все без изменений в появившемся окне и нажмите «Добавить компоненты» (Add Features). Если кроме IIS вы ничего не устанавливаете, то нажмите «Далее» (Next). Просмотрите список компонентов IIS, выберите нужные или оставьте по умолчанию, нажмите «Далее» (Next). Ознакомьтесь с информацией в следующем окне и нажмите «Далее» (Next). Просмотрите список ролей веб-сервера IIS, которые будут установлены. Отметьте необходимые или оставьте без изменения и нажмите «Далее» (Next).

Обратите внимание, что служба FTP по умолчанию не устанавливается. Если в дальнейшем вам понадобятся новые роли, то вы сможете их добавить без переустановки IIS.

Нажмите кнопку «Установить» (Install).

При необходимости отметьте «Автоматический перезапуск конечного сервера» (Restart the destination server automatically if required), если пункт не выбран, то перезагрузите сервер самостоятельно после окончания установки.

Запустите «Диспетчер серверов» (Server Manager) из меню «Пуск» (Start).

В списке содержимого появится установленная служба IIS .

В правом верхнем углу нажмите на пункт меню «Средства» (Tools) и запустите «Диспетчер служб IIS» (Internet Information Services Manager). В панели «Подключения» (Connections) кликните по имени сервера, в появившемся окне отметьте «Не показывать снова» (Do not show this message) и нажмите кнопку «Нет» (No). Панель «Просмотр возможностей» (Features View)

Возможности, доступные вам в службе IIS, перечислены на панели Просмотр возможностей (Features View). Отсюда управляйте возможностями IIS, настраивайте и перезапускайте. Например, настройте SSL-сертификаты.

Сразу после установки IIS по умолчанию создается пустой сайт Default Web Site . Проверьте его работу, набрав в адресной строке браузера localhost . Загрузится страница, созданная по умолчанию. Файлы этой страницы по умолчанию расположены на диске C:\inetpub\wwwroot Добавьте сайты, которые будут обслуживаться этим веб-сервером. Для этого в контекстном меню пункта «Сайты» (Sites) на вкладке «Подключения» (Connections) выберите «Добавить сайт» (Add Website). Заполните поля формы данными о сайте и нажмите ОК. В списке сайтов IIS появится только что добавленный.

Илон Маск рекомендует:  Как выровнять заголовок таблицы по левому краю
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL