Назад | Перейти на главную страницу

IIS 6 запрещает доступ к документу по умолчанию

У меня Windows Server 2k3 с IIS6, на котором размещена пара приложений ASP.NET MVC 2 (.NET 4), все на веб-сайте по умолчанию. Большинство из них просто используют встроенную аутентификацию, но некоторые также используют формы. Все приложения работают исправно и корректно доступны.

Проблема, которую я пытаюсь решить, - это доступ к документу по умолчанию. В настоящее время он указан как index.htm. И index.htm, и веб-сайт по умолчанию настроены для разрешения анонимного доступа (ни один из флажков доступа с проверкой подлинности не отмечен). Однако доступ к файлу запрещен.

Доступ через server.domain.tld/ и server.domain.tld/index.htm оба дают 401 ошибку. Тем не мение, server.domain.tld/default.htm (файл не существует) правильно возвращает 404.

Если я изменю безопасность файла на index.htm, чтобы разрешить встроенную аутентификацию, то запрос /index.htm напрямую работает правильно для пользователей с учетными записями домена, но анонимные пользователи получают запрос на вход / 401.

Как настроить IIS, чтобы разрешить всем пользователям просматривать index.htm через server.domain.tld/?

Права доступа к файлам для анонимного доступа устанавливаются через специальную учетную запись пользователя, которая называется IUSR_<MachineName>.

Проверьте разрешения NTFS (вкладка Безопасность) как для корневой папки документа, так и для index.htm сам файл. Убедитесь, что у этой учетной записи есть доступ для чтения ко всем файлам и папкам, которые анонимные пользователи должны иметь возможность просматривать.

Если этой учетной записи нет в списке или у нее нет всех разрешений на чтение по умолчанию, попробуйте добавить ее с разрешениями «Чтение» по умолчанию. (Конечно, вам следует не предоставьте этой учетной записи разрешения «Изменить» или «Полный доступ».)

Для получения более подробной информации обратитесь к руководству Microsoft по как установить необходимые разрешения NTFS и права пользователя для IIS6.