Публикация на веб-сервере IIS

Данное руководство устарело. Актуальное руководство: Руководство по ASP.NET Core

Последнее обновление: 31.10.2015

Как правило, большинство веб-приложений ASP.NET публикуются на веб-сервер IIS. Поэтому посмотрим на примере, как размещать веб-приложение на IIS-севере.

В начале сконфигурируем веб-сервер. Для этого откроем средство администрирования IIS: зайдем в Панель управления, затем выберем Администрирование->Диспетчер служб IIS. И нам откроется консоль управления IIS:

Консоль IIS

Будем размещать свой сайт в узле по умолчанию (в моем случае это Default Web Site). И для этого вначале создадим в каталоге этого узла папку для нашего приложения. По умолчанию каталогом для стандартного веб-узла является каталог C:\inetpub\wwwroot. Перейдем в нее и создадим в нем папку BookStore, которая будет содержать наше приложение.

Теперь нажмем правой кнопкой мыши на имя узла по умолчанию и выберем в появившемся меню пункт Добавить приложение:

Добавление приложения в IIS

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

Настройка приложения для IIS

Сайт у нас практически создан. Теперь осталось разместить в каталоге C:\inetpub\wwwroot\BookStore наше приложение.

Перейдем к приложению в Visual Studio. Нажмем правой кнопкой на название проекта и в появившемся меню выберем Publish:

Перед нами откроется мастер публикации, который предложит нам пройти несколько этапов. В начале выберем профиль:

Мастер публикации сайта в Visual Studio 2012

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

После создания профиля нажмем на Next и перейдем к следующему этапу - Connection. На этом этапе для опции Publish Method выберем File System

Для опции Target Location определим физический путь к каталогу нашего сайта. В данном случае это путь C:\inetpub\wwwroot\BookStore.

А для поля Destination URL указываем url, по которому будет доступно приложение, а именно http://localhost/BookStore.

После установки всех свойств жмем на кнопку Publish. После этого в Visual Studio в окне Output студия выдаст сводку об успешности или неуспешности публикации. Возможно, вы увидите сообщения "Отказано в доступе", из-за чего публикация пройдет неудачно:

Консольный вывод публикации сайта

В этом случае нам надо открыть доступ к папке C:\inetpub\wwwroot\BookStore на запись (по умолчанию стоит доступ только на чтение) и повторить публикацию.

Либо как вариант, если мы не хотим раскрывать доступ на запись, то можно вручную скопировать и перенести все необходимые файлы в указанную выше папку. Как нам показывает окно Output, все файлы для публикации сохраняются в проекте в каталоге obj\Release\Package\PackageTmp. И мы можем просто скопировать все файлы из этого каталога и перенести их в каталог C:\inetpub\wwwroot\BookStore.

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

Теперь запустим Службу веб-публикаций через консоль Служб или через консоль IIS и можем обращаться к сайту по url http://localhost/BookStore.

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850