Я пытаюсь настроить демонстрационную машину EEEPC с версией Windows 7 Home Premium, чтобы все драйверы были правильно загружены (не спрашивайте меня, почему это версия Home) с установленным IIS7.
Я развернул приложение для демонстрации на компьютере, который является сайтом ASP.NET MVC, добавил веб-сайт через консоль, добавил пул приложений. Пул приложений запускается как NetworkService, а гостевая аутентификация - как IUSR.
Я добавил права на изменение для NetworkService и права на чтение и выполнение для IUSR для папки веб-сайта и его содержимого.
Когда я попадаю в корневой каталог сети, скажем, http://example.com/, я получаю правильный HTML-код, отображаемый на веб-сайте (что означает, что приложение работает), но проблема в том, что весь статический контент возвращается пустым.
Я не уверен, почему это происходит. Нет страницы с ошибкой 404 или 500, просто пустой ответ при доступе к статическому контенту. Все содержимое, сгенерированное ASP.NET, работает нормально (хотя и немного странно, так как все CSS и изображения не загружаются)
Пожалуйста, помогите, Консоль управления IIS7 очень смущает меня, и я нуждаюсь в машине к завтрашнему дню.
источник
В моем случае роль сервера уже была установлена, и все же статический обработчик обслуживал пустые страницы даже для тривиального тестового сайта с одним сопоставлением обработчика.
Исправление состояло в том, чтобы включить ограничение запроса «вызывать обработчик, только если запрос сопоставлен». Неважно, установил ли я «Файл» или «Файл или каталог»; Пока флажок включен, он работает:
Если это по-прежнему не помогает, другая вещь, которая приводит к пустым страницам, - это попытка указать путь в разделе «Путь запроса», например,
public
или, может бытьpublic/*
. Последнее просто неправильно, в то время как первое должно быть принято, но вместо этого приводит к пустым страницам. Решение состоит в том, чтобы обернуть отображение обработчика в<location path='public'>
раздел, указав*
для параметра «Путь запроса». Или в диспетчере IIS разверните сайт и сначала выберите папку, а затем измените сопоставления обработчиков.источник
Как предложил @MattB, у меня не была включена функция «Статическое содержимое», но это только одна часть проблемы.
Я добавил функцию «Статическое содержимое», но проблема все еще сохраняется, поэтому я собираюсь удалить MvcHttpHandler по умолчанию из списка сопоставлений обработчиков, и каким-то образом проблема решается сама собой ... поэтому проблема заключалась в том, что MvcHttpHandler перехватывал запросы до того, как StaticFileHandler,
К вашему сведению, после установки «Статического контента», также убедитесь, что ...
В моем случае MvcHttpHandler был выше всего остального, я решил проблему, переместив его в конец списка, который является наиболее разумным местом, где он должен быть, потому что обработчики AXD-файлов, обработчики TRACE, обработчик OPTIONS и статический контент получают шанс при обработке запроса первым.
Надеюсь, это поможет кому-то погуглить ту же проблему :-)
источник