Пошаговое руководство. Создание локального веб-узла IIS в Visual Web Developer

Visual Studio 2010

Обновлен: Ноябрь 2007

В Visual Web Developer можно создавать и редактировать веб-узлы с различными вариантами расположения веб-страниц и других файлов. Имеются следующие варианты выбора расположения веб-страниц и других файлов:

  • В папке на локальном жестком диске — в таком случае веб-узел называется файловым.

  • В качестве веб-приложения на локальной копии сервера Microsoft IIS — в таком случае веб-узел называется локальным веб-узлом IIS.

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

В данном пошаговом руководстве работа будет вестись с двумя веб-узлами, работающими под управлением локального экземпляра сервера IIS. Один из веб-узлов физически расположен в корневой папке IIS (обычно это папка C:\Inetpub\wwwroot). Второй веб-узел расположен в удобно размещенной папке на жестком диске, но серверу IIS он доступен через виртуальный каталог.

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

a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

Если на компьютере нельзя запустить сервер IIS, создавать и редактировать веб-узлы ASP.NET все же можно — для этого используется Visual Web Developer. Дополнительные сведения см. в разделе Пошаговое руководство. Создание базовой веб-страницы в Visual Web Developer.

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

  • Создание приложения и страницы в корневом каталоге IIS.

  • Создание приложения, использующего виртуальный корневой каталог IIS.

  • Использование IIS для запуска страницы.

  • Работа с IIS в обозревателе решений.

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

В первой части данного пошагового руководства будет создан веб-узел, находящийся в папке IIS по умолчанию (обычно это папка \Inetpub\wwwroot).

Создание нового локального веб-узла IIS в корневом каталоге IIS

  1. Откройте Visual Web Developer.

  2. В меню Файл выберите команду Создать веб-узел.

    Откроется диалоговое окно Создать веб-узел.

  3. В группе Установленные шаблоны Visual Studio выберите Веб-узел ASP.NET.

  4. Нажмите кнопку Обзор.

    Откроется диалоговое окно Выбор папки.

  5. Выберите Локальный веб-сервер IIS.

  6. Выберите Веб-узел по умолчанию.

  7. Щелкните значок «Создать новую веб-программу», расположенный в правом верхнем углу.

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

    В Веб-узел по умолчанию будет добавлен новое приложение с именем WebSite.

  8. В поле для нового веб-узла введите LocalIISWebSite и нажмите кнопку Открыть.

    Появится диалоговое окно Создать веб-узел, в самом правом поле Расположение которого будет присутствовать текст http://localhost/LocalIISWebSite.

  9. В списке Язык выберите язык программирования, с которым вы предпочитаете работать.

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

  10. Нажмите кнопку .

    Visual Web Developer создаст новый веб-узел и откроет новую страницу с именем Default.aspx. Оставьте эту страницу открытой. Данная начальная страница Default.aspx использует модель выделения кода веб-страниц. Дополнительные сведения см. в разделе Модель кода веб-страниц ASP.NET.

Visual Web Developer не только создает папки и файлы для веб-узла, но также взаимодействует с сервером IIS, чтобы создать веб-приложение IIS для веб-узла. По сути дела, Visual Web Developer обращается к серверу IIS для создания метаданных, необходимых IIS для распознавания папки и страниц в качестве веб-узла.

Существует возможность проанализировать действия Visual Web Developer, изучив созданные папки и файлы.

Анализ структуры локального веб-узла IIS

  1. В Microsoft Windows нажмите кнопку Пуск и выберите пункт Выполнить.

    В диалоговом окне Запуск программы введите в поле ОткрытьC:\Inetpub\wwwroot и нажмите кнопку ОК.

    a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

    Если сервер IIS установлен на другом диске или в другой папке, измените путь соответствующим образом.

    В папке \wwwroot теперь можно видеть новую папку с именем LocalIISWebSite.

  2. В диалоговом окне Путь дважды щелкните LocalIISWebSite.

    Вы увидите содержимое веб-узла, к которому относится следующее:

    • Папка App_Data, автоматически создаваемая Visual Web Developer.

    • Страница Default.aspx.

    • Файл кода программной части с именем Default.aspx.cs или Default.aspx.vb, в зависимости от языка программирования, выбранного в качестве языка веб-приложения по умолчанию.

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

Добавление и программирование элементов управления

В данной части пошагового руководства на страницу будут добавлены элементы управления Button, TextBox, и Label, а также написан код, обрабатывающий событие Click элемента управления Button.

Добавление элементов управления на страницу

  1. В Visual Web Developer откройте или переключитесь на страницу Default.aspx и перейдите в режим конструктора.

  2. Несколько раз нажмите кнопку ВВОД, чтобы появилось свободное место.

  3. Перетащите на страницу три элемента управления с вкладки Стандартныепанели элементов: TextBox, Button и Label; поместите их внутри элемента div на странице.

    a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

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

  4. Поместите указатель вставки перед текстовым полем и введите следующее: Введите ваше имя:.

  5. Щелкните элемент управления Button, после чего в окне Свойства задайте в качестве значения свойства Text строку Показать имя.

  6. Щелкните элемент управления Label, после чего в окне Свойства очистите свойство Text.

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

    Visual Web Developer откроет файл кода данной страницы в отдельном окне редактора.

    Данный файл содержит каркас обработчика событий Click элемента управления Button.

  8. Дополните обработчик событий Click, добавив выделенный ниже код, отображающий текстовую строку после нажатия элемента управления Button.

    a1zz9df4.alert_security(ru-ru,VS.100).gifПримечание о безопасности.

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

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = Textbox1.Text & ", welcome to Visual Web Developer!"
    End Sub
    

    protected void Button1_Click(object sender, EventArgs e)
    {
        Label1.Text = TextBox1.Text + ", welcome to Visual Web Developer!";
    }
    
  9. Сохраните файлы.

    Позднее в данном пошаговом руководстве эта веб-страница будет протестирована в разделе «Тестирование веб-приложения IIS».

Обновление веб-узла извне Visual Web Developer

Можно видеть, что Visual Web Developer читает путь IIS, добавляя новый файл в приложение извне Visual Web Developer.

Обновление веб-узла извне Visual Web Developer

  1. С помощью Блокнота или другого текстового редактора создайте новый файл, содержащий следующий текст в зависимости от того, используется ли Visual Basic или C#.

    <%@Page language="VB"%>
    <script runat="server">
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
       Button1.Text = "I was clicked!"
    End Sub
    </script>
    <html>
    <body>
    <form runat="server" id="form1">
    <asp:button runat="server" text="Button1" Id="Button1"
        OnClick="Button1_Click"></asp:button>
    </form>
    </BODY>
    </HTML>
    

    <%@Page language="C#"%>
    <script runat="server">
    protected void Button1_Click(object sender, System.EventArgs e)
    {
       Button1.Text = "I was clicked!";
    }
    </script>
    <html>
    <body>
    <form runat="server" id="form1">
    <asp:button runat="server" text="Button1" Id="Button1"
        OnClick="Button1_Click"></asp:button>
    </form>
    </BODY>
    </HTML>
    
    
  2. Сохраните файл в папке C:\inetpub\wwwroot\LocalIISWebSite под именем TestPage.aspx.

    a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

    Если сервер IIS установлен на другом диске или в другой папке, измените путь соответствующим образом.

  3. Щелкните имя веб-узла (http://localhost/LocalIISWebSite/) в обозревателе решений в Visual Web Developer, после чего в меню Вид выберите команду Обновить.

    Список файлов веб-узла будет обновлен с включением добавленного файла. Далее предстоит тестирование веб-страниц.

Тестирование веб-приложения IIS

Теперь можно оттестировать веб-узел.

Тестирование локального веб-узла IIS

  1. В Visual Web Developer откройте страницу Default.aspx.

  2. Нажмите CTRL+F5 для запуска страницы.

    Страница откроется в обозревателе. Обратите внимание, что в качестве URL-адреса в обозревателе будет использован адрес http://localhost/LocalIISWebSite/default.aspx. Запрос данной страницы будет обращен к узлу localhost (без указания номера порта) и обрабатывается сервером IIS.

  3. При появлении страницы в окне обозревателя введите в текстовом поле свое имя и нажмите кнопку Показать имя, чтобы убедиться в том, что страница работает.

  4. В Visual Web Developer откройте страницу TestPage.aspx.

  5. Чтобы запустить страницу, нажмите клавиши CTRL + F5.

    Страница откроется в том же экземпляре обозревателя.

  6. При появлении страницы в окне обозревателя щелкните кнопку Button1, чтобы убедиться в том, что она работает.

  7. Закройте обозреватель.

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

Тестирование веб-узла в качестве общедоступного

  • На другом компьютере введите URL-адрес, содержащий имя компьютера, на котором работает веб-сервер, имя веб-узла и default.aspx в качестве имени страницы:

    • Если к компьютеру можно подключиться через локальную сеть, используйте для указания сервера имя компьютера, содержащее URL-адрес, аналогичный следующему:

      http://server1/LocalIISWebSite/default.aspx

    • Если на компьютере размещен домен, то подключиться к странице можно, используя URL-адрес, аналогичный следующему:

      http://www.contoso.com/LocalIISWebSite/default.aspx

    • Если компьютер находится в сети или подключен к Интернету напрямую, в качестве имени сервера для данного компьютера можно использовать IP-адрес. Например:

      http://172.19.195.700/LocalIISWebSite/default.aspx

      a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

      Если параметры брандмауэра Windows не допускают просмотр приложения с другого компьютера, можно открыть 80 порт на веб-сервере. Это можно сделать на вкладке Дополнительно брандмауэра Windows, нажав кнопку Параметры. Дополнительные сведения о параметрах брандмауэра Windows можно найти на веб-узле Центр безопасной разработки — платформа .NET Framework.

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

a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

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

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

На первом этапе необходимо создать виртуальный каталог. Если файловый веб-узел в Visual Web Developer уже создан (например, при выполнении руководства Пошаговое руководство. Создание базовой веб-страницы в Visual Web Developer), можно использовать этот веб-узел.

Создание локального веб-узла IIS с использованием виртуальной папки

  1. В Visual Web Developer в меню Файл выберите команду Создать веб-узел.

  2. В группе Установленные шаблоны Visual Studio выберите Веб-узел ASP.NET.

  3. Нажмите кнопку Обзор.

    Откроется диалоговое окно Выбор папки.

  4. Выберите Локальный веб-сервер IIS.

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

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

    Откроется диалоговое окно Создание виртуального каталога.

  6. В поле Псевдоним введите WebSite_vdir.

    a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

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

  7. В поле Папка введите один из следующих вариантов:

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

    • Путь, где будет создана новая папка для хранения файлов и папок веб-узла.

  8. Нажмите кнопку ОК.

    Если указанная папка не существует, Visual Web Developer предложит создать ее.

    Затем Visual Web Developer вновь отобразит диалоговое окно Выбор папки и обновит список веб-приложений IIS, в котором будет представлен созданный виртуальный каталог.

  9. Выберите только что созданный виртуальный каталог, нажмите кнопку Открыть, после чего нажмите кнопку ОК, чтобы создать веб-узел.

    Если указать для виртуального каталога новую или существующую папку, в которой нет веб-узла, Visual Web Developer создаст папку App_Data и страницу по умолчанию, а также откроет страницу в конструкторе.

    Если виртуальный каталог указывает на существующий файловый веб-узел, Visual Web Developer откроет диалоговое окно Веб-узел уже существует и предложит выбрать новую папку, открыть существующий узел или создать новый веб-узел в существующей папке. После того, как вы выберете нужный вариант и нажмете кнопку ОК, Visual Web Developer отобразит содержимое папки в обозревателе решений и откроет страницу Default.aspx, если она существует.

Добавление элементов управления на веб-страницу

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

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

Добавление элементов управления на страницу

  1. В Visual Web Developer откройте страницу Default.aspx и переключитесь в режим конструктора.

  2. С вкладки Стандартныепанели элементов перетащите на страницу элементы управления TextBox, Button и Label; поместите их внутри элемента div.

  3. Дважды щелкните элемент управления Button и добавьте выделенный ниже код:

    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = "Welcome to Visual Web Developer!"
    End Sub
    

    protected void Button1_Click(object sender, System.EventArgs e)
    {    
        Label1.Text = "Welcome to Visual Web Developer!";
    }
    
  4. Сохраните файлы.

Тестирование виртуального каталога

Теперь можно оттестировать веб-узел.

Тестирование локального веб-узла IIS с использованием виртуального каталога

  1. В Visual Web Developer откройте страницу на веб-узле. Это может быть страница Default.aspx или любая другая страница.

  2. Чтобы запустить страницу, нажмите клавиши CTRL + F5.

    Страница откроется в обозревателе. Обратите внимание, что в качестве URL-адреса в обозревателе будет использоваться адрес http://localhost/Website_vdir/default.aspx. Когда сервер IIS разрешает URL-адрес, он находит физический путь, связанный с виртуальным каталогом Website_vdir, и ищет по нему страницу.

  3. Когда страница отобразится в обозревателе, щелкните элемент управления Button, чтобы убедиться в том, что он работает.

  4. Закройте обозреватель.

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

Локальными веб-узлами IIS в Visual Web Developer можно управлять, удаляя ненужные узлы. Методы удаления существенно различаются в зависимости от типа локального веб-узла IIS, с которым ведется работа:

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

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

Удаление локального веб-узла IIS

  1. В меню Файл выберите команду Закрыть решение или Закрыть проект.

  2. В меню Файл выберите команду Открыть веб-узел.

  3. В диалоговом окне Открыть веб-узел щелкните Локальный веб-сервер IIS.

  4. Щелкните имя виртуального каталога (Website_vdir), который был создан ранее в данном руководстве.

    a1zz9df4.alert_caution(ru-ru,VS.100).gifВнимание!

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

  5. Щелкните значок удаления в верхнем углу.

    Этот значок не подписан, но если навести на него указатель мыши, появится подсказка Удалить.

  6. Получив запрос на подтверждение удаления веб-узла, нажмите кнопку Да.

  7. Нажмите кнопку Отмена, чтобы закрыть диалоговое окно Открыть веб-узел.

  8. Откройте обозреватель и введите URL-адрес виртуального каталога:

    http://localhost/Website_vdir/default.aspx

    На этот раз обозреватель сообщит, что страница не найдена, поскольку сервер IIS больше не распознает Website_vdir как веб-узел на локальном компьютере.

    a1zz9df4.alert_note(ru-ru,VS.100).gifПримечание.

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

В этом руководстве вы узнали, как создавать веб-узлы с использованием локальной копии сервера IIS. Возможно, вам также будет интересно узнать о создании других типов веб-узлов с помощью Visual Web Developer. Например, попробуйте выполнить следующие действия.

Показ: