上兩篇已經實現了WebApi及基於jwt的Token設置,那么功能做完了,該發布WebApi了。為什么要對發布進行一下說明呢,因為是基於vscode和.netcore的發布,所以可能會遇到莫名奇妙的問題。
第一步,vscode的發布
打開vscode,四下查找,希望能夠找到一個publish按鈕或功能區,結果,很明顯失敗了。所以想起來vscode是個文本編輯器,肯定在命令行里有命令,那就命令行吧。
在終端中打開,輸入
dotnet publish -h
猜對了,至少這有命令和幫助,如下圖
那這個命令簡單了
dotnet publish -f netcoreapp3.1 -c release -o D:\Develop\***\Deploy\WebApiSite
見到這個運行結果,那么恭喜發布成功
第二步,iis的配置和網站添加
打開IIS,啟動或關閉IIS功能,要啟動以下如圖所示的功能(Win10系統)
.NET 3.5和4.8全選
IIS服務器選項全選
確定,稍等一會,然后在搜索框中輸入IIS
在IIS網站列表新建一個網站,物理路徑配置為剛才發布的文件夾,注意修改端口到自己希望的端口號
確定之后就完成了網站的創建,但是要設置一下應用程序池,雙擊對應條目
將應用程序池修改為無托管代碼,確定即可
第三步,填坑
都配置完了,用postman測試一下吧
毫無疑問,出問題了,看看詳細錯誤吧
錯誤很明顯,謂詞過濾程序不允許使用這個http謂詞,但是提示的是不允許post,發出的請求是get呀,再仔細看看后面的錯誤提示原來WebDAVModule掛了,那就把你干掉!
打開網站所在路徑的web.config文件,添加移除模塊的配置項
再次測試
又錯了,具體信息
這一下就看到了,肯定是WebDAVmodule添加又被忽略了,打開配置仔細看
添加了這個模塊,下方又要移除,網站不知道該如何處理了,好了,注釋上方的配置項,重啟網站,再次測試。
Bingo,久違的Token又出現了。
所以今天的任務又完成了,下樓喝酒擼串去吧