Сайт mvc / webapi по умолчанию работает в IIS Express, но не в IIS 7.5

1

Я искал googled и искал stackoverflow, следующие не были полезны

Служба RESTFul работает в IIS Express/VS2013, но не на сервере IIS - исправление при запуске говорит "Обновление не применимо к вашему компьютеру".

Различные результаты в IIS express и IIS - не запущены dotnetnuke или webmatrix

работа с Win7Pro, с IIS7.5 Устанавливается VS2013Pro udpate 3, был установлен VS14CTP, но теперь он удален.

Создайте новый проект, выберите веб-приложение, MVC + WebApi, установите WebApi 2.2 через nuget. Внесите никаких изменений в приложение, нажмите F5, начало приложения в хром, см. Сайт по умолчанию ASP.NET со ссылкой на домашнюю страницу и api. Нажав на ссылку Api, вы попадаете на страницу справки, описывающую доступные вызовы api.

Публикуйте сайт в файловой системе, создайте новый веб-сайт IIS, укажите сайт в опубликованную папку, добавьте пользователя defaultAppPool в папку. перейдите на сайт из диспетчера IIS. Отображается сайт, но не отображаются стили. Сайт установки как машинное имя: 80 также попробовал машинное имя: 50102. Не использовать SSL или аутентификацию.

В хром-консоли есть 3 ошибки (это не происходит в IISExpress). Uncaught SyntaxError: Unexpected token < modernizr:1 Uncaught SyntaxError: Unexpected token < jquery:1 Uncaught SyntaxError: Unexpected token < bootstrap:1

Пытаясь перейти к ссылке api, просто обновляет страницу, страница справки не отображается.

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

Напомним, что никаких изменений в коде не было внесено, только созданное по умолчанию решение mvc + webapi.

Проверено приложение application_start(), оно содержит GlobalConfiguration.Configure(WebApiConfig.Register); как вторая строка.

Любая помощь будет оценена по достоинству.

  • 0
    Попробуйте получить доступ к .css-файлу или .js-файлу, чтобы увидеть, что возвращается. Похоже, что-то портит ваши файлы. Судя по выводу консоли и тому, что стили не загружены. Некоторые недостающие MIME-типы?
  • 0
    когда я нажимаю «modernizr» в ошибке консоли, она возвращает страницу по умолчанию. Похоже, что все возвращает страницу по умолчанию. Может быть проблема маршрутизации, но она работает в IISExpress, поэтому я понятия не имею, что может быть не так. Журналы IIS, просто показать 200 OK для запросов "/", нет 404 или других ошибок в журнале.
Показать ещё 5 комментариев
Теги:
asp.net-mvc
iis
asp.net-web-api
iis-express

1 ответ

0
Лучший ответ

Это в основном сводится к тому, как вы создали решение. В Visual Studio 2013 Professional, File-> Новый проект → Visual С# → Веб → Веб-приложение ASP.NET Нажмите OK. В раскрывающемся списке "Добавить папки и основные рефренсы для:" MVC проверен и выделен серым цветом, вы не можете его отменить. Установите флажок "Веб-API", нажмите "ОК". Все будет нормально работать во время работы в VS. Однако однажды опубликован как релиз. Point IIS в опубликованной папке, если необходимо, перейдите на страницу. Загрузка страницы, но имеет ошибки, как описано выше.

Чтобы этого избежать, не устанавливайте флажок "Веб-API" при создании нового проекта. Добавьте Web API в решение после его создания, а не во время создания.

Версия VS 12.0.31101.0 Обновление 4.NET версия 4.5.52747

Ещё вопросы

Сообщество Overcoder
Наверх
Меню