文章轉自:https://blog.csdn.net/liaoyunjxn/article/details/100044104
包含下載鏈接:https://dotnet.microsoft.com/download
不管是使用.net core開發的是web api還是網站類的程序,只要是部署到IIS,那麼下面的內容都適合於你,不會將.net core程序部署到IIS的朋友,可以看看這篇手把手教你部署.net core程序的教程。
將.net core程序部署到IIS總體需要經過以下3個大步驟,其中在IIS上配置網站有些比較繁瑣,我都會逐一給出詳細步驟。
安裝IIS和.net core運行時程序
部署.net core程序首先要確保你服務器上的IIS環境要安裝好,不知道怎樣在服務器上安裝IIS,請先自行搜索一下;確保IIS安裝好了後,還需要安裝.net core的運行時,運行時的程序文件可以在官網下載最新版本安裝,點擊這裏直達官網下載運行時。
.net core環境運行時
安裝好了後,如果你在IIS上模塊裏面看到AspNetCoreModule,表示安裝成功。
怎樣查看AspNetCoreModule模塊
進入IIS後,先點左側你的服務器上IIS名稱,然後會出現上圖右邊所示的模塊,點擊進就會在下圖右側出現IIS上衆多的模塊,當你安裝了運行時後,就會出現 AspNetCoreModule 這個東東,表示安裝成功,已經具備在IIS上運行.net core程序的環境了。
基本環境配置好了後,下面該發佈.net core 程序了。
以文件的形式發佈.net core程序到指定目錄
將.net core程序部署到IIS上,可以做到一鍵部署,即使在遠程服務器上也是可以做到一鍵部署,這方面的文章我在去年寫了這篇通過VS2017發佈.net core程序並使用Web 部署到遠程服務器最新教程的文章,感興趣的朋友可以看看。
VS2019發佈.net core程序提供了5種方式,本文爲了演示目的就以文件的形式發佈.net core程序到指定目錄的方式來說明發布過程。打開你的.net core程序解決方案,在.net core程序上右鍵,點發布,如下圖所示:
開始發佈.net core程序
點擊發布(Publish)後 會出現下面的選擇設置框,然後根據你的需要設置好保存目錄即可,這裏選擇Folder
指定發佈目錄
發佈成功後會有如下提示:
發佈成功
發佈成功後,找到這個目錄,將其打包上傳到服務器上,本文這兒純演示,就直接在本機操作,就略過了複製文件到安裝了IIS的服務器上的步驟。
IIS上面建立網並配置好網站設置
這步操作一般是在遠程服務器上操作,本文演示,就直接在本地環境搞了。
IIS上建立網站
在IIS上建立網站,需要提前將發佈文件複製到服務器的隨意目錄,不一定要放在C盤的wwwroot目錄,你可以放在任意位置。在服務器上打開IIS,爲了方便,你可以在服務器上建立一個IIS的快捷方式,不會建請自行google。
(1)在IIS左側管理界面,看到網站,直接右鍵,添加網站
添加網站
右鍵添加網站後,會出現下面的添加網站界面,設置好網站名稱,我一般習慣性的命名爲域名的名稱,如你申請的域名是 www.ccav.com,則設置名稱爲www.ccav.com。物理路徑就是上傳到服務器上的發佈文件保存的目錄,本機演示上文指定的是C盤,ccav.com目錄,指向它即可。主機名可以設置爲域名,IP地址,設置爲域名前提需要你的域名解析了纔行,不然訪問不了;還有一種方式就是修改host文件的方式,下文會講到。主機名可以在添加網站後修改,意思就是可以修改綁定的域名。
.net core網站設置
(2)修改應用程序池爲無託管代碼
在上面步驟添加網站完畢後,會自動創建和網站名稱相同的應用程序池,通俗來說應用程序池就是服務器分配給網站的一個資源集合,管理着網站的內存,進程等內容,如你的網站使用了緩存,緩存分配的內存也是受應用程序池管理的,應用程序池一回收,緩存就全部失效。所以一般的做法都是使用分佈式緩存,如memcahe或才redis。所以在asp.net 時代,網站慢了時,重啓大法很好用也是這個道理。
網站應用程序池
如果你的程序要和數據庫打交道,數據庫和網站沒有分開時,則還要修改應用程序標識,在應用程序池上右鍵–>高級設置,彈出的窗口上面修改即可。
高級設置
在打開的高級設置窗口裏面,有很多設置項,不懂的別亂整,感興趣的,可以自行研究。但對於.net core程序來說,連了數據庫最有可能修改的就是高級設置裏面的標識項,標識設置就是給應用程序相應訪問數據庫、執行文件讀寫的權限等。
修改標識,一般不用修改。
(3)修改host文件設置(非必須操作)
因爲在上面的操作中,我將主機名設置爲了www.ccav.com,在完成了本節點第2個步驟後,你就去打開網站瀏覽肯定是打不開的,除非在上面的操作中,你指定的主機名是IP地址,然後在瀏覽器中,通過輸入IP地址的方式來打開,這樣是可以正常訪問到你的網站的,如果指定的是IP地址,當前操作就可以省略掉。
在指定主機名是,使用一個域名的方式,更接近於真實環境的訪問,可以發現很多你使用IP地址不能發現的問題。
修改host文件操作過程如下:
你可以通過運行命令直接打開host文件:
通過運行窗口打開host文件
host文件所在目錄是: c:\Windows\System32\drivers\etc\hosts ,然後使用記事本打開修改即可,修改後的host文件如下:
修改後的host文件
重要提示:修改後如果不能保存,說明你沒有管理員權限,請先給你windows賬號設置爲管理員權限,如下圖所示:
不能保存host文件,需要先給管理員權限
(4)打開網站瀏覽一下
經過上面的一系列設置,就已經完成了將 .net core程序部署到IIS的所有步驟,你可以在瀏覽覽器裏面輸入IP地址或者域名(主機名指定爲域名)的形式,能正常打開則表明部署成功。
.net core網站部署成功
後記
如果部署時,指定的是域名,但那個域名不是你的或者你們公司的,或者也沒有解析,我們可以通過修改host的方式來實現使用域名來訪問;在局域網內,或者測試環境下,其他人要訪問你的網站,也只需要修改一下host文件即可,添加一條記錄,將IP地址指向服務器地址,然後就可以通過輸入域名的方式來打開所部署的網站了。