Я новичок в Angular и развернул приложение на IIS 10 вне папки wwwroot. В IIS установлен URL Rewrite, и это содержимое файла web.config, который я использую.
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.webServer>
<rewrite>
<rules>
<rule name="Angular Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
</conditions>
<action type="Rewrite" url="./index.html" />
</rule>
</rules>
</rewrite>
</system.webServer>
</configuration>
В индексе. html файл, который у меня есть <base href="/">
Когда я построить приложение, это команда, которую я использую:
ng build --base-href "/ myapp" --prod
Когда я захожу на сайт https://servername/index.html страница загружается и URL становится https://servername/myapp/.
Если я пытаюсь напрямую go до https://servername/myapp/, я получаю ошибка сервера 500, ЕСЛИ Я не использую https://servername/index.html сначала.
Моя конечная цель - использовать https://servername/myapp/?param1=123¶m2=321 Однако это работает только при посещении https://servername/index.html первый.