.Net 6
紙殼CMS v3.5最主要的更新就是升級到了最新的.Net 6運行環境,擁有更好的性能,啟動更快。在Linux平台部署時可不用安裝libgdiplus,部署更方便。並且docker鏡像比之前的版本縮小50%。
更新日志:
- 升級運行環境到 .Net 6 #444
- 替換驗證碼生成方案,Linux上無需安裝其它依賴 #445
- footer / header 標簽無法綁定數據 bug #446
- 將更新索引任務移到后台任務執行,避免更新時間過長卡死頁面
出於安全考慮,企業版的在線編輯模板功能不再支持Razor,默認只支持Liquid模板。
升級指引
如果有添加自己的插件,注意需要修改插件的項目文件。
第一,將TargetFramework
設置為net6.0
,並且添加EnableDynamicLoading
設置,將值設置為true
,如下圖所示
第二,將ZKEACMS.csproj的項目引用添加<Private>false</Private>
和<ExcludeAssets>runtime</ExcludeAssets>
,如下圖所示:
更新發布程序
新的發布程序適配了.Net6,並且更新了發布插件的邏輯,可以縮短發布時間。可以使用以下命令更新發布程序到最新版本:
dotnet tool update ZKEACMS.Publisher -g
覆蓋部署注意事項
首先,請手動升級運行環境:
- Windows:https://www.zkea.net/windows-hosting-bundle-installer
- Linux:https://www.zkea.net/dotnet-runtime-linux
下載后使用tar zxf dotnet.tar.gz -C ~/dotnet
解壓到原dotnet安裝目錄即可。
升級.Net 6之后,Razor視圖的預編譯不再分開為單獨的dll,所以在部署的時候需手動刪除項目下的所有的*.Views.dll
文件以免發生一些未知錯誤。
另外我們建議刪除根目錄下的所有dll文件和依賴項,3.5版本的依賴項有所變更,這樣可清除一些不必要的DLL文件,例如:System.Drawing.Common.dll
。
由於System.Drawing.Common
不再跨平台支持,因此我們移除了對它的依賴,換成了SixLabors.ImageSharp。