Angular9 發佈後找不到default page index.html

Angular9 發佈後找不到default page “index.html”

問題描述:

使用ASP.Net Core發佈Angular Web應用後,訪問後報錯:

The SPA default page middleware could not return the default page ‘index.html’ because it was not found, and no other middleware handled the request.

原因有以下幾個方面:

(1)生成文件路徑

在項目的startup.cs中配置的spa的staticfile的路徑是"ClientApp/dist"

img

但是在angular.json配置文件下,配置的outputPath是"dist/ClientApp"

img

導致發佈後路徑找不到

解決方案:

修改angular.json配置文件中的"outputPath"爲"dist",然後重新發布即可。

(2)文件權限

這個原因主要針對部署在Linux環境的程序,可以先給文件所在的文件賦權

sudo chmod -R 777 文件夾/文件名

重新運行項目即可

(3)啓動路徑

這個原因是在Linux系統中發現,若項目發佈的文件不是放在Linux主目錄下,在主目錄路徑下直接運行程序,也會報這個錯,當前的解決方法是:進入項目發佈文件的目錄,在該目錄下運行程序,例如,項目發佈文件存放於/usr/publish下,則

cd /usr/publish
dotnet xxx.dll
,則

cd /usr/publish
dotnet xxx.dll

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章