如何移轉 IIS 上大量的應用程式集區及網站到另一台機器

Application Pool 匯出所有 App Pool指令: %windir%\system32\inetsrv\appcmd.exe list apppool /config /xml > D:\temp\apppools.xml 匯入所有App Pool指令: %windir%\system32\inetsrv\appcmd.exe add apppool /in < D:\temp\apppools.xml Web Site 匯出所有 Web Site指令: %windir%\system32\inetsrv\appcmd.exe list site /config /xml > D:\temp\sites.xml 匯入所有 Web Site指令: %windir%\system32\inetsrv\appcmd.exe add site /in < D:\temp\sites.xml Enjoy. Jacky

0

設定 Web Deploy Package 部署後, 不要刪除特定資料夾

情境: 使用 TFS 做 CI/CD , 發現 Web Deploy Package 會刪除目的地中的資料夾, 造成使用者上傳的檔案都不見了. 解決方式: 用筆記本開 YourApplication.csproj 加入以下宣告,讓部署的時候,排除掉Uploads資料夾,也同時不要刪除該資料夾 <ItemGroup>       <ExcludeFromPackageFolders Include=”Uploads”>     </ExcludeFromPackageFolders>   </ItemGroup>    <ItemGroup>        <MsDeploySkipRules Include=”SkipAppData”>         <SkipAction>Delete</SkipAction>         <ObjectName>dirPath</ObjectName>         <AbsolutePath>Uploads</AbsolutePath>         <XPath></XPath>       </MsDeploySkipRules>   </ItemGroup>   Enjoy. Jacky

0

Windows 2008 R2 標準版免安裝快速升級到企業版

由標準版升到企業版可以由安裝光碟中重新安裝一次. 另一個方式是用 DISM.exe 的 Set-Edition 指令直接升級. 用 DISM /online /Get-CurrentEdition 知道現在的版本   用 DISM /online /Get-TargetEditions 查看可以升級到的版本為何.     用 DISM /online /Set-Edition:<edition ID> /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX  升級 範例: DISM /online /Set-Edition:ServerDatacenter /productkey:ABCDE-ABCDE-ABCDE-ABCDE-ABCDE 執行完成再重新啟動電腦即完成升級. 參考資訊: https://blogs.technet.microsoft.com/server_core/2009/10/14/upgrading-windows-server-2008-r2-without-media/

0

程式取得 AD 驗證完後, 帳號詳細狀態

很多朋友會開發與 AD 驗證帳號的程式, 並希望取得帳號的狀態值, 提供一個簡單的方式可以方式知道這些狀態. catch (System.DirectoryServices.DirectoryServicesCOMException directoryServiceCOMException) { Console.WriteLine(“—————————————————————“); Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.Message));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ErrorCode));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ExtendedError));     Console.WriteLine(string.Format(“{0}: Message: {1}”, DateTime.Now.ToString(), directoryServiceCOMException.ExtendedErrorMessage)); } directoryServiceCOMException.ExtendedErrorMessage 中會回傳帳號的詳細狀態: [LDAP: error code 49 – 80090308: LdapErr: DSID-0C090334, comment: AcceptSecurityContext error, data 775, vece ] 代號相關的狀態說明: 525 user not…

0

有需要用到 WINDOWS 2016 的 IIS 嗎?

這是好多夥伴問我的問題? 一定要用最新的嗎? 對, 一定要用 Windows 2016 的 IIS 10. 主要的原因是它支援 HTTP/2 詳細的說明: HTTP/2 on IIS 或是在網路上找一下 HTTP/2 的一些說明, 就了解為何我的答案如此肯定. HTH. Jacky

0

Windows Server 2016 之 IIS 10 效能調校注意事項

Tuning IIS 10.0 文章中有提到要注意的事項, 大家可以跟這文章遂一調整. In this article Kernel-mode settings Cache management settings Request and connection management settings User-mode settings Ideal CPU setting for NUMA hardware User-mode cache behavior settings Compression behavior settings Central binary logging Application and site tunings Managing IIS 10.0 modules Classic ASP settings ASP.NET concurrency setting Worker process and recycling options…

1

使用 Exchange Web Service (EWS) 更新會議的做法

請參考下列的程式碼粗體字的時間指定. 若沒有指定, 時間會變成 UTC .  Central Standard Time 可以指定為 Taipei Standard Time 即為台北的時區.   static void UpdateAppointmentTimeZone(ExchangeService service, ItemId apptId, bool shiftAppointment) {     PropertySet includeTimeZones = new PropertySet(AppointmentSchema.Subject,                                                    AppointmentSchema.Start,                                                    AppointmentSchema.ReminderDueBy,                                                    AppointmentSchema.End,                                                    AppointmentSchema.StartTimeZone,                                                    AppointmentSchema.EndTimeZone);       Appointment apptToUpdate;       // Load the existing appointment.     // This will result…

0

將舊版的 TFS 升級到 TFS 2017.1

舊版 TFS 升級的路徑如下圖: 總結這一陣子來升級的心得: 執行升級前一定要備份現在的 TFS 資料庫. 若有任何狀況發生, 還可以還原到現行的版本. TFS 2012 以前版本需要 2 ~ 3 次升級才會到 TFS 2017.1  TFS 2017 支援資料庫為 SQL 2014 及 SQL 2016. 升級時要資料庫要先升級完成, TFS 2017 安裝時會檢查資料庫的版本. Visual Studio 各版本支援 TFS 2017 的狀況: https://www.visualstudio.com/en-us/docs/setup-admin/requirements#client-compatibility Visual Studio 2017 Visual Studio 2015 Visual Studio 2013 Visual Studio 2012 Visual Studio 2010, requires Service Pack…

0

Windows 10 Creators Update 包含 .NET Framework 4.7 更新.

Windows 10 Creators Update 中有許多我喜歡的功能, 身為開發人員也必須知道 安裝 Creators Update 後, .NET Framework 4.7 也一起安裝了. .NET Framework 4.7 有新增功能也有修正 bug. 詳細資訊請參考: Announcing the .NET Framework 4.7 .NET Framework 4.7 release notes HTH. Jacky

0

VSTS/TFS 的 Release Management 到底可以做到那些平台的部署支援?

這個應該是客戶問我的 Top 5 問題之一. 去西雅圖參加 TechReady 時, 也跟 DevOps PM 交換了一下想法. 將PM 講的內容濃縮成下列兩點: Any Developer.  Any App.  Any Platform. 在微軟不是口號, 我們真的朝這個方向大大的努力. 所以沒有再限定在 Windows 平台. 基本上只要是 指令可以做到的事, 我們平台完全可以支援. 他也直接開啟 Release Management 的畫面說明 Command Line 的工具是跨平台的工具, 很多人都以為它是只能執行 在 Windows 平台的 cmd.exe. 其實它可以在任何平台上執行指令的. 如下圖: 這次去了西雅圖兩周, 除了學了不少新技術, 也跟不少人討論了客戶常問的問題或是方向. 再陸續跟大家分享. Enjoy. Jacky  

0