Поделиться через


Устранение неполадок ASP.NET Development Server

Обновлен: Ноябрь 2007

ASP.NET Development Server запускается автоматически при проверке веб-узла на базе файловой системы в Visual Studio. Дополнительные сведения см. в разделе Веб-серверы в Visual Web Developer.

В некоторых случаях работа с ASP.NET Development Server может вызывать ошибка. В этом разделе перечислены ситуации, в которых веб-сервер может вызывать ошибки, и представлены возможные способы их устранения.

Ошибка «Failed to start monitoring changes to ...» (Невозможно запустить отслеживание изменений ...)

Эта ошибка может возникать при использовании ASP.NET Development Server с олицетворением уровня приложения и работе Windows Vista с включенной функцией Контроль учетных записей.

По умолчанию Windows запускает приложения под учетной записью с ограниченными правами, даже при условии входа в систему в качестве администратора. Необходимо запустить Visual Studio в контексте учетной записи администратора при выполнении веб-приложения на базе Windows Vista с использованием олицетворения уровня приложения.

Ошибка «Could Not Create Windows User Token» (Не удается создать маркер пользователя Windows)

Эта ошибка может возникнуть, если веб-узел настроен в файле Web.config для использования олицетворения для каждого приложения (то есть олицетворения с фиксированной учетной записи) и если учетная запись, функционирующая на веб-сервере, не имеет привилегии работы в качестве части операционной системы (также называемой базовой привилегией доверенного компьютера (TCB)). Можно настроить веб-узел для олицетворения определенной учетной записи с использованием синтаксиса, например следующего, в файле Web.config.

<identity impersonate="true" userName="<UserName>" password="<securepassword>" />
w566a94d.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

При сохранении конфиденциальных сведений, таких как имена пользователей и пароли, в файле конфигурации следует зашифровать важные значения, используя защищенную конфигурацию. Дополнительные сведения см. в разделе Практическое руководство. Безопасность строк подключения при использовании элементов управления источником данных.

Процесс, который запускает ASP.NET Development Server, должен иметь привилегию TCB. Поэтому если веб-узел настроен для выполнения олицетворения, необходимо предоставить привилегию TCB учетной записи, запускающей веб-сервер.

w566a94d.alert_security(ru-ru,VS.90).gifПримечание о безопасности.

Привилегия TCB является очень мощной, и, как правило, следует предоставлять ее как можно меньшему числу учетных записей. Если веб-узел использует олицетворение и не может использовать ASP.NET Development Server без предоставления привилегии TCB учетной записи, запускающей веб-сервер, следует использовать службы IIS для проверки веб-узла, чтобы не назначать привилегии учетной записи без необходимости.

Ошибка «Page Cannot Be Displayed» (Не удается отобразить страницу) (ошибка 502)

Одной из возможных причин ошибки 502 или ошибки, показывающей, что не удается отобразить страницу, является то, что обозреватель не может разрешить URL-адрес, содержащий «localhost» и номер порта, например https://localhost:8080/ExampleWebSite/Default.aspx. ASP.NET Development Server работает исключительно с localhost и по умолчанию использует случайно выбранный номер порта для каждого запроса.

Вы можете устранить эту ошибку путем обхода прокси-сервера для локальных запросов. Дополнительные сведения см. в разделе Практическое руководство. Обход прокси-сервера для локальных веб-запросов.

Ошибка «Connection Refused» (Отказ в соединении)

Сервер выдает следующую ошибку.

10061 - Connection Refused
Internet Security and Acceleration Server

Эта ошибка может возникнуть, если компьютер работает в сети, которая защищена Internet Security and Acceleration Server (ISA Server) и если выполняется одно из следующих условий:

  • Клиент межсетевого экрана не установлен.

  • Параметр веб-прокси в обозревателе Internet Explorer настроен неправильно.

Это не происходит при работе с IIS, так как IIS использует порт 80 и доступ к порту 80 разрешен ISA Server и другими программами межсетевого экрана. Однако ASP.NET Development Server произвольно выбирает порт, а доступ к большинству портов заблокирован программами межсетевого экрана, например ISA Server.

Вы можете избежать этой проблемы следующими способами:

  • Установите клиентское ПО межсетевого экрана, например клиент ISA.

  • Измените параметры подключения к веб-прокси в обозревателе Internet Explorer для обхода прокси-сервера для локальных адресов.

Ошибка «Предел BIOS был превышен» (BIOS Limit Has Been Exceeded)

Эта ошибка может произойти при работе в веб-приложении на базе файловой системы, файлы которого находятся на удаленном компьютере. Ошибка происходит во время выполнения при попытке запуска страницы с помощью ASP.NET Development Server.

Вероятно, вы увидите эту ошибку, когда на удаленном компьютере функционирует система Windows 2000 или Windows XP. Если на удаленном компьютере функционирует Windows 2000, можно выполнить инструкции, приведенные в статье 810886 базы знаний Майкрософт для установки более высокого значения для максимального числа одновременных подключений. При работе в Windows XP можно избежать этой ошибки путем закрытия существующих общих ресурсов, включая терминальные сеансы сервера, на удаленном компьютере. (Система Windows XP настроена с фиксированным числом максимальных одновременных сетевых запросов.) По возможности можно также скопировать файлы веб-приложения на локальный компьютер и проверить приложение на нем.

Статистические файлы не обслуживаются

В веб-узле на основе файловой системы статические файлы, например изображения и таблицы стилей, являются субъектами правил авторизации ASP.NET. Например, невозможно предоставить статические файлы на веб-узле файловой системы анонимному пользователю, если отключен анонимный доступ к этим файлам. Однако при развертывании веб-узла на сервере, на котором функционирует IIS, IIS будет обслуживать статистические файлы без использования правил авторизации.

См. также

Основные понятия

Типы веб-узлов в Visual Web Developer