IIS 7 Олицетворение - ASP.NET MVC 3 Приложение
Я разработал приложение в рамках ASP.NET MVC 3 (C# / Razor), и пока все работает нормально. Вчера я решил установить IIS 7 (я думаю, 7.5) на мою машину для разработки (Windows 7), чтобы посмотреть, возникнут ли какие-либо проблемы при развертывании на реальном сервере. Ну, была пара, 3 из которых я не могу найти ответ (и, возможно, нет ответа).
Первая проблема (возможно, этот вопрос следует задать при переполнении стека)
В Visual Studio 2010, когда я направлялся к свойствам проекта в раздел "Интернет", я переключил конфигурацию "Серверы" на "Использовать локальный веб-сервер IIS" и снял флажок с "Конфигурация использования IIS Express". Однако всякий раз, когда я нажимаю "Создать виртуальный каталог", я получаю сообщение об ошибке, что Visual Studio не может настроить веб-интерфейс для ASP.NET 4.0 и просит меня сделать это вручную. Однако он создает виртуальный каталог и, похоже, работает до этого момента (но веб-сайт не загружается, что приведет меня ко второму вопросу). В Visual Studio я также не могу запустить веб-сайт в Debug (или даже в Release), но это не должно быть проблемой, поскольку мне нужно только скомпилировать (и, возможно, перезапустить пул приложений / веб-сайт).
Вторая проблема
Следуя вышеперечисленным шагам, я получил ошибку 403.18 Forbidden. (Извините за то, что не опубликовал сообщение об ошибке, но оно не будет иметь большого значения, так как оно на французском языке... Черт, закон Квебека 101, заставляющий компании покупать все на французском языке) Затем я попытался сделать "Руководство" (но настроил с функция публикации в Visual Studio) настройка веб-приложения, которая будет развертывать приложение непосредственно в корне веб-приложения вместо виртуального каталога. Это решило проблему, но я все еще хочу заставить ее работать в виртуальном каталоге.
Третья проблема - решена
При запуске приложения локально с помощью http://localhost/
, ему удается использовать мою учетную запись Windows без каких-либо подсказок. Когда я получаю доступ к приложению с помощью своего IP-адреса локальной сети (локально или удаленно) или даже моего IP-адреса обратной связи (127.0.0.1), оно запрашивает логин и пароль. Я считаю, что при включенном ASP.NET Impersonate попытка использовать учетную запись перед попыткой входа в систему, но я, по-видимому, ошибаюсь, если только что-то не было сделано должным образом. Может ли кто-нибудь осветить меня на этом?
Большое спасибо,
Pluc
(PS. Я не уверен, какой файл конфигурации выложить, поэтому, если какая-либо информация отсутствует, пожалуйста, дайте мне точно знать, какой файл вам нужен в комментарии, и я отредактирую свой вопрос, чтобы добавить необходимую информацию)
Решение для третьей проблемы
Это была просто проблема с браузером, не определяющим IP-адрес как веб-сайт интрасети. Добавьте IP на доверенный веб-сайт или используйте FQN (я использовал имя компьютера), и это работает.
1 ответ
Что касается № 3,
Internet Explorer попытается обнаружить адреса в интрасети, выполнив поиск "." в URL.
Вот почему вы получаете запрос при доступе по IP (даже 127.0.0.1, у него есть точки.).
Вы можете вручную добавить сайты в зону интрасети, и это должно позволить Windows-аутентификации работать.