WTM是一個基於.NET Core的開源Web開發平台,在構建一次性應用或快速開發系統時可以使用(官網號稱2-3天就能開發出一個小型的應用系統)。這里不做任何廣告,主要記錄一下發布過程中的一些問題。
我用的版本是.NET Core6.0+Vue3.0(typeScript)構建的ASP.NET Core項目,需要安裝VS2022。直接在VS2022里面點擊發布后,到publish文件夾,然后掛載到IIS中運行。另外這里需要做一些基本的設置,以下問題都是基於這些基本設置完成之后發生的問題。
基本設置:
- 安裝.NET Core 6.0
- 安裝ASP.NET Core 6.0運行時環境
- IIS中設置應用程序池為無托管代碼
1):Your application is running in Production mode, so make sure it has been published, or that you have built your SPA manually
解決辦法:將ClientApp/dist文件夾中的文件復制到wwwroot文件夾中即可。
2):系統中的涉及到PUT動作的請求均報錯
解決辦法:第一反應是在IIS中添加允許PUT動作,試過不行。后來百度了解WebDAVModule模塊攔截了PUT請求,所以刪除WebDAVModule模塊后OK。
3):發布時注意事項
a. 檢查一下appsetting.json中的Connections中的數據庫連接字符串賬號和密碼是否正確
b. 發布時,appsetting.json文件中的Domains節點下的server和serverpub中的Address端口號要與最終發布到IIS的端口號一致,否則登錄不了
c. 要將IIS應用中的模塊WebDAVModule刪除,否則系統中的所有修改動作都失效(提示Web Method Not Allowed錯誤)
d. 要注意發布時選擇的.net版本要與服務器的.net版本一致,並且將host等環境安裝好
