У меня есть веб-приложение, состоящее из клиентского кода Angular 4, который вызывает часть серверных сервисов, написанную на ASP.NET WebAPi. Я развернул свое веб-приложение на IIS v10 на том же веб-сайте, но при обновлении я получаю исключение 404. Не найдено.
Так что теперь у меня есть один веб-сайт в IIS с двумя подкаталогами, называемый wwwroot, который содержит производственный код Angular ипапка bin для кода выпуска WebApi. Сайт работает хорошо, если я не нажму кнопку обновления браузера, где я беру 404 Исключение. Я нашел много решений в Интернете, но никто не работает. Я попытался установить компонент IIS urlrewrite и добавил это правило перезаписи в мой файл Web.config, расположенный в корневой папке:
<rewrite>
<rules>
<rule name="AngularJS Routes" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>
, но я получил следующие ошибки: localhost /: 1 Ресурс интерпретируется как Таблица стилей, но переносится сMIME-тип text / html: "http://localhost:8084/styles.a41bc47d7e564e63171c.bundle.css". inline.f6f68ecaf0de3791ceeb.bundle.js: 1 Uncaught SyntaxError: неожиданный токен '<' polyfills.0eff33741bac279a3ec4.bundle.js: 1 Uncaught.bundle.js: 1 Uncaught SyntaxError: неожиданный токен '<' main.2ee824fa31f5e7f44a12.bundle.js: 1 Uncaught SyntaxError: неожиданный токен '<' Как решить проблему? Заранее спасибо </p>