VS Code WebApi系列——3、發布

上兩篇已經實現了WebApi及基於jwt的Token設置,那麼功能做完了,該發布WebApi了。為什麼要對發布進行一下說明呢,因為是基於vscode和.netcore的發布,所以可能會遇到莫名奇妙的問題。

第一步,vscode的發布

打開vscode,四下查找,希望能夠找到一個publish按鈕或功能區,結果,很明顯失敗了。所以想起來vscode是個文本編輯器,肯定在命令行里有命令,那就命令行吧。

在終端中打開,輸入

dotnet publish -h

猜對了,至少這有命令和幫助,如下圖

 

 那這個命令簡單了

 dotnet publish -f netcoreapp3.1 -c release -o D:\Develop\FeyeUav\FeyeUav.Iaas.Dap\Deploy\WebApiSite

見到這個運行結果,那麼恭喜發布成功

 

第二步,iis的配置和網站添加

打開IIS,啟動或關閉IIS功能,要啟動以下如圖所示的功能(Win10系統)

.NET 3.5和4.8全選

 

 IIS伺服器選項全選

 

 確定,稍等一會,然後在搜索框中輸入IIS

 

 在IIS網站列表新建一個網站,物理路徑配置為剛才發布的文件夾,注意修改埠到自己希望的埠號

 

 確定之後就完成了網站的創建,但是要設置一下應用程式池,雙擊對應條目

 

 將應用程式池修改為無託管程式碼,確定即可

 

 第三步,填坑

都配置完了,用postman測試一下吧

 

 毫無疑問,出問題了,看看詳細錯誤吧

 

錯誤很明顯,謂詞過濾程式不允許使用這個http謂詞,但是提示的是不允許post,發出的請求是get呀,再仔細看看後面的錯誤提示原來WebDAVModule掛了,那就把你幹掉!

打開網站所在路徑的web.config文件,添加移除模組的配置項

 

 再次測試

 

 又錯了,具體資訊

 

 這一下就看到了,肯定是WebDAVmodule添加又被忽略了,打開配置仔細看

 

 

 添加了這個模組,下方又要移除,網站不知道該如何處理了,好了,注釋上方的配置項,重啟網站,再次測試。

 

 Bingo,久違的Token又出現了。

 

 所以今天的任務又完成了,下樓喝酒擼串去吧