2016-01-06 6 views
4

Я пытаюсь заставить приложение ASP.NET автоматически запускаться всякий раз, когда запущен пул приложений.Как правильно автозагрузить приложение asp.net в IIS10

В соответствии с большим и большим количеством ссылок в Интернете я уже сделал следующее:

  • Установка пула приложений для StartMode=AlwaysRunning
  • Установить сайт в вопросе (который принадлежит beforementioned Pool) в preloadEnabled=true
  • Установите функцию Application Initialization для установки Windows,
  • Добавьте <applicationInitialization> узел <system.webServer> узла web.config, в

Веб-приложение основано на Owin и имеет простой протокол ведения журнала log4net в своем методе Startup.Configuration(). Теперь при перезапуске IIS я вижу, что процесс w3svc.exe запущен, поэтому я знаю, что работает StartMode=AlwaysRunning. Однако в журнале не регистрируются сообщения.

Переход к любому URL-адресу (даже несуществующий) в приложении запустит приложение и добавит строку журнала.

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

Поиск на этом сайте Я, к сожалению, не смог найти решение.

Заранее спасибо.

+0

Установлена ​​ли установка сервера веб-сервера | Разработка приложений | Инициализация сервера приложений. См. Http: //www.iis.net/learn/get-started/whats-new-in-iis-8/iis-80-application-initialization # TOC301259895 –

+0

Я действительно, и пока я не уверен, что изменилось, он работает сейчас. Кажется, я просто пропустил требуемую перезагрузку или что-то в этом роде. – Robba

ответ

9

Чтобы ответить на мой вопрос для будущих поколений, кажется, я был на правильном пути. Для того, чтобы получить приложение, чтобы начать в IIS10 (и я предполагаю, что в IIS 8, а), необходимо только следующие три этапа:

  1. комплект пула приложений для StartMode=AlwaysRunning, чтобы убедиться, что процесс w3svc.exe всегда работает для App Pool.
  2. Установить сайт в вопросе (который принадлежит beforementioned Pool) в preloadEnabled=true
  3. Установите функцию Application Initialization для установки Windows, в соответствии с инструкциями here.

Одна важная вещь, чтобы отметить, что если Application Initialization задача не была предварительно установлена ​​на компьютере, вы необходимо перезагрузить машину. Это то, что я пропустил в последний раз, что привело к некоторому времени, потраченному на поиски других вещей :(

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

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

+1

Ты сделал мой день. Хотя мне не пришлось перезагружать машину, iisreset было достаточно для меня, чтобы заставить его работать. –

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

  • Нет связанных вопросов^_^