Contents

在 IIS 部署 .Net Core 程式

第一次部屬Net Core程式,部屬要怎麼做。參考網路方式,有看到Web Deploy,不過第一次部屬我覺得還是先用手動部屬,之後再嘗試 Web Deploy。本篇採取手動布署程式。

Info

之後再嘗試 Web Deploy

有完成筆記紀錄,不過是不建議使用方式。相關可參考這篇Web IIS Web Deploy 操作記錄 - 程式狂想筆記)。

安裝步驟

參考:[鼠年全馬鐵人挑戰]Week02-部署ASP.NET Core 3.1 專案至IIS上 | by Nina Weng | Medium

  1. 安裝 .NET Core 的 Hosting Bundle 版本
    https://i.imgur.com/LKtBSM3.png

安裝過程不詳細說明。
https://user-images.githubusercontent.com/6058558/265262551-da6918d2-baa8-428b-a44f-cb913e2d2045.png

https://hackmd.io/_uploads/SkfuVgf0n.png

  1. 啟用 IIS

  2. IIS 新增站台
    https://hackmd.io/_uploads/HyCyBxfCh.png

https://i.imgur.com/nBV7nUu.png

  1. Visual Stuio 發布專案

https://i.imgur.com/n9Xho3I.png

https://i.imgur.com/tE8yIlZ.png

https://i.imgur.com/hOKNLc7.png

https://i.imgur.com/YMC5tOX.png

  1. 把相對應路徑複製到 IIS 站台路徑

https://i.imgur.com/2O9rbP3.png

注意這邊 web.config是 IIS 設定。

特別設定

選擇無託管

我朋友建議選這個選項,但我還沒研究為什麼要選這個。

https://i.imgur.com/ifeY38X.png

布署錯誤問題

.netcore web部署之後訪問報錯HTTP Error 500.31 - ANCM Failed to Find Native Dependencies

https://i.imgur.com/qBkX5nz.png

參考: .netcore web部署之后访问报错HTTP Error 500.31 - ANCM Failed to Find Native Dependencies - 安然亦智 - 博客园

[NETCore] ASP.NET Core 啟動失敗 - failed to start process with commandline ~ m@rcus 學習筆記

https://i.imgur.com/v4HxbRt.png

404 問題

  1. web.config
  2. 確認 IIS 權限
  • IUSRS
  • IIS_USRS
  • IIS AppPool\xxxName

相關文章可參考:

發布排除 web.config

參考:[.Net] 部署 .net core 到 Azure VM 上的 IIS 但是忽略 web.config | 當麻許的超技八

1
2
3
4
  <PropertyGroup>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <IsTransformWebConfigDisabled>true</IsTransformWebConfigDisabled>
  </PropertyGroup>

其他相關文章:

Tip
之前同事說假如有調整 web.config 的話,可以在專案建立 web.config。在產生布署檔案會順便憶起產生。所以可能也不需要這樣設定?