У меня есть проект AngularJS, и я добавил
$locationProvider.html5Mode(true).hashPrefix('!');
в файл app.js. Я хочу настроить IIS 7 для маршрутизации всех запросов на
http://localhost/app/index.html
чтобы это сработало для меня. Как это сделать?
Update:
Я только что обнаружил, загрузил и установил модуль IIS URL Rewrite, надеясь, что это облегчит и станет очевидным для достижения моей цели.
Обновление 2:
Я думаю, это подводит итог тому, чего я пытаюсь достичь (взято из Документация разработчика AngularJS):
Использование этого режима требует перезаписи URL-адресов на стороне сервера, в основном вы должны переписать все свои ссылки на точку входа приложения (например, index.html)
Обновление 3:
Я все еще работаю над этим, и я понимаю, что мне не нужно перенаправлять (иметь правила, которые переписывают) определенные URL-адреса, такие как
http://localhost/app/lib/angular/angular.js
http://localhost/app/partials/partial1.html
поэтому все, что находится в каталогах css, js, lib или partials, не перенаправляется. Все остальное должно быть перенаправлено на app/index.html
Кто-нибудь знает, как достичь этого легко, не добавляя правило для каждого отдельного файла?
Обновление 4:
У меня есть 2 входящие правила, определенные в модуле перезаписи URL-адреса IIS. Первое правило:
Второе правило:
Теперь, когда я перехожу к localhost/app/view1, он загружает страницу, однако поддерживающие файлы (те, что указаны в каталогах css, js, lib и partials) также переписываются на страницу app/index.html - поэтому все возвращается как index.html-страница независимо от того, какой URL-адрес используется. Я предполагаю, что это означает, что мое первое правило, которое должно предотвращать обработку этих URL-адресов вторым правилом, не работает.. какие-либо идеи?...кто угодно?... Я чувствую себя таким одиноким...: - (