Сайт MVC3, развернутый на IIS6, перестает работать через 20 минут с 404 Not Found - PullRequest
0 голосов
/ 07 июня 2011

Я постараюсь сделать это коротким, не стесняйтесь спрашивать более подробную информацию.

Мобильная версия веб-сайта была создана с использованием бритвы MV3 и развернута на веб-сервере IIS6 с использованием URL-адресов без расширений. Поскольку на сервере установлен .NET4, на нем не выполняется специальная настройка для работы с URL-адресами без расширений. Когда я пытаюсь получить доступ к сайту с помощью URL: http://site/m/, я получаю 404 Not Found ошибку.

Что я делаю, чтобы вызвать эту проблему:

  1. Щелкните правой кнопкой мыши проект в VS2010 и опубликуйте его в локальной файловой системе.
  2. ZIP все файлы в и передачи на рабочий сервер + распаковать туда
  3. Щелкните правой кнопкой мыши на производственном веб-сайте и добавьте виртуальный каталог для нового приложения.
  4. Создание нового пула приложений со всеми настройками по умолчанию
  5. Поместить новый виртуальный каталог / приложение в этот пул приложений.
  6. Попробуйте получить доступ к URL в браузере; получить 404 Not Found

Меня удивляет то, что если я заменю Шаг 1 на «Файл-> Создать новый проект MVC3», а затем опубликую в локальной файловой системе, все будет работать нормально:

  1. Тест-проект отображается в браузере с именем, которое я использовал http://site/mvctest/
  2. Мне не нужно использовать какие-либо расширения
  3. Не перестает работать через 20 минут (см. Следующий параграф)

А теперь для (даже) более странной части:

Если я сейчас переместлю приложение "m" в пул приложений, только что созданный для приложения "mvctest"; это тоже работает. Но только на 20 минут (или любое другое значение, которое я установил для «Завершить рабочий процесс после простоя»).

Есть идеи?

EDIT : Если я добавлю сопоставление с подстановочными знаками в виртуальный каталог /m/, это будет работать, но это должно / может также негативно повлиять на производительность?

1 Ответ

0 голосов
/ 08 июня 2011

похоже, в вашем первом сценарии обработчик не настроен для обработки запросов mvc.IIS 6 должен быть интегрирован или расширение для сопоставления MVC.Настройте пул приложений для работы в режиме интегрированного конвейера.Что происходит потом?Это должно работать.Также проверьте журнал событий на предмет быстрого срабатывания защиты от сбоев из-за сброса рабочего процесса.

...