После развертывания моего Asp Net Core Angular Spa на общем веб-сервере запросы на компоненты углового времени выполнения возвращают мой файл index.html.
РЕДАКТИРОВАТЬ (перефразируя вопрос для ясности):
У меня есть угловой спа, который обслуживается шаблоном с сердечником из осины.Когда я перехожу к URL-адресу приложения, возвращается страница индекса, а затем последующие вызовы для возврата файлов сценариев для клиентского приложения также возвращают index.html ... даже если URL-адрес запрашивает runtime.js, main.js и т. д.
Какая дополнительная конфигурация требуется в дополнение к приведенным ниже выдержкам из кода?
public void ConfigureServices(IServiceCollection services)
{
services.AddSpaStaticFiles(configuration =>
{
configuration.RootPath = "ClientApp/dist";
});
}
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
app.UseStaticFiles();
app.UseSpaStaticFiles();
app.UseMvc();
app.UseSpa(spa =>
{
spa.Options.SourcePath = "ClientApp";
});
}
В моем angular.json я указываю следующие префиксы URL:
"baseHref": "/APPNAME/",
"deployUrl": "/APPNAME/ClientApp/dist/"
Дерево исходного кода выглядит правильно.
Запросы для каждого из компонентов среды выполнения выполнены успешно, но все они возвращают мой index.html, а не тот, который был запрошен.
URL запроса:https://example.com/MYAPP/ClientApp/dist/main.17cf96a7a0252eeecd9e.js
Ответ от сетевого отладчика Chrome:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>APP NAME</title>
<base href="/APPNAME/">
<meta content="width=device-width, initial-scale=1"
name="viewport">
<link href="HRDRicon.png"
rel="icon"
type="image/x-icon">
<link rel="stylesheet" href="/APPNAME/ClientApp/dist/styles.d9e374eff45177231bee.css"></head>
<body class="fixed-sn white-skin">
<app-root></app-root>
<noscript>
<p>
Sorry, JavaScript must be enabled to use this app
</p>
</noscript>
<script type="text/javascript" src="/APPNAME/ClientApp/dist/runtime.e460f84ccfdac0ca4695.js">
</script><script type="text/javascript" src="/APPNAME/ClientApp/dist/polyfills.d0cb8e9b276e2da96ffb.js"></script>
<script type="text/javascript" src="/APPNAME/ClientApp/dist/scripts.a54ea6f0498a1f421af9.js"></script>
<script type="text/javascript" src="/APPNAME/ClientApp/dist/main.17cf96a7a0252eeecd9e.js"></script>
</body>
</html>
Я добавлю ссылку на изображения в комментарии, поскольку она ограничена в исходном сообщении.