2008-11-24 7 views
5

Мне нужно развернуть веб-приложение на нескольких ноутбуках (хотя это веб-приложение, оно предназначено для запуска только через localhost - поэтому необходимо развернуть на нескольких разных машинах).Могу ли я автоматизировать создание веб-приложения .NET в IIS?

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

Редактировать: Мой вопрос, ясно, не очень ясен.

Я хочу использовать IIS, но я хочу создать веб-приложение автоматически, не открывая консоль управления IIS (MMC).

ответ

7

Я могу sugest вас принять look at this link при развертывании на IIS6 or at this one если это IIS7 (я мог бы рекомендуем Mike Volodarsky's blog за любую информацию о IIS7 в целом). Вам должно быть довольно просто написать пакетный файл для автоматизации создания сайта. Пример:

  • IIS6: iisweb/создать C: \ Rome "Мои каникулы"/d www.reskit.com/dontstart
  • IIS7:% WINDIR% \ system32 \ Inetsrv \ Appcmd Добавить сайт/имя: MyNewSite/bindings: http/*: 81:/physicalPath: c: \ inetpub \ mynewsite
1

Чтобы реализовать минимальный веб-сервер, вы можете использовать HTTP.SYS (основной компонент IIS, развернутый с Windows XP SP2 или выше). В .NET это можно сделать, например. используя класс HttpListener в пространстве имен System.Net.

С уважением, Тамберг

2

Вы можете заглянуть внутрь Cassini Sample Web Server (поставляется с источником):

Выборка Веб-сервер ASP.NET Кассини образец веб-сервер, написанный с использованием Microsoft® .NET ® Framework и демонстрирует хостинг ASP.NET с использованием ASP.NET хостинг API (System.Web.Hosting).

4

Вы действительно просят два разных вопроса. Во-первых, зачем изобретать велосипед? По всей видимости, ноутбуки уже способны запускать IIS - он доступен на всех «современных» версиях Windows, за исключением, возможно, Vista Home. Во-вторых, установщик VS.NET может легко настроить и настроить установку на IIS. Если вы используете Wix или какой-либо другой сторонний установщик, вам потребуется больше ручной работы, но все равно можно сделать.

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

+0

Да, это то, что я имею в виду, я просто редактировал вопрос: D Thx – inspite 2008-11-24 11:16:31

+0

+1 для чтения вопроса. Сначала я тоже думал о «Моно», но, как выясняется, название не имеет особого отношения к тексту ... – Tomalak 2008-11-24 11:16:33

+0

На самом деле, я думаю, что никто не читал слово «автоматизировать» в вопросе ..... – inspite 2008-11-24 11:34:27

1

Создайте новый проект Visual Studio типа «Установка и развертывание» и используйте тип «Веб-настройка».

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

После этого вы также сможете выполнять сетевые установки, поэтому, если у вас есть права, вы можете управлять этим централизованно.

0

Посмотрите на this сообщение. В нем объясняется, как запустить веб-сервер Cassini из командной строки и добавить его в качестве расширения оболочки.

EDIT: В блоге CarlosAg есть отличные сообщения о IIS administration throw PowerShell и managed code.

1

Вы можете создать виртуальный каталог без использования консоли MMC с помощью задачи WebDirectoryCreate доступной внутри проекта msbuildtasks

Смежные вопросы