Я знаю, что в IIS не учитывается регистр. Однако приложение angular обрабатывает базовую часть href URL-адреса с учетом регистра , что означает, что IIS должен изменить базовую href-часть URL-адреса на правильный формат, прежде чем будет задействовано приложение angular.
Итак, у меня есть базовый href, определенный как:
myapp
и
import { Location } from '@angular/common';
// ...
private location: Location
С большим количеством проб и ошибок с приложением angular я не мог получить
this.location.path()
для правильной работы с обоими URL-адресами:
myapp/login
и
myApp/login
, где myapp - это базовый href. Последний из приведенных выше URL-адресов возвращается как myApp / login, а не логин
this.location.path()
Поэтому я хотел бы создать правило перезаписи в IIS, которое нечувствительно обрабатывает виртуальный каталог / базовый регистр href и angular приложение всегда видит URL-адреса, такие как 'login', а не 'myApp / login'.
Однако правила перезаписи URL-адресов IIS кажутся только для части ПОСЛЕ виртуального каталога / базового href.
Что может Я делаю? Как я уже сказал, решение этой проблемы только в IIS было бы лучшим вариантом. Другой вариант, когда базовый href обрабатывается в приложении angular, мог бы быть возможен, но без жесткого кодирования его в приложении я не смог заставить его работать.