The Will Will Web

記載著 Will 在網路世界的學習心得與技術分享

如何設定 ASP.NET Core 在發行到 IIS 時移除 X-Powered-By 標頭

最近我們公司有一個新的網站即將上線,在做資安檢核的時候發現網站有回應一個 X-Powered-By 標頭,一般來說我們都會透過修改 Web.config 的方式移除這個標頭,但我希望這個動作可以在 CI/CD 的時候自動完成,而不是每次都手動調整 Web.config 設定檔。我之前在 如何透過 dotnet publish 調整 ASP․NET Core 部署到 IIS 的 Web.config 內容 文章中已經介紹了許多 ASP.NET Core 發行到 IIS 的設定技巧,今天我想來做出一點補充,讓我們可以在透過 dotnet publish 發行網站時調整 Web.config 的任意設定內容。

... 繼續閱讀 ...

分享幾個 IIS URL Rewrite 模組的設定技巧

我大概一年會設定個幾次 IIS 的 URL Rewrite 功能,對於不常設定的內容每次都還是要查詢一下範例,所以這裡就記錄一下幾個常用的設定技巧,以後就可以直接參考這篇文章!

... 繼續閱讀 ...

如何透過 dotnet publish 調整 ASP․NET Core 部署到 IIS 的 Web.config 內容

其實我們在透過 dotnet publish 發行 ASP․NET Core 網站時,預設都會自動發佈一個 web.config 檔案,但是事實上這個檔案跟 Kestrel 完全沒關係,這個檔案主要是給 IIS 看的,當你想部署 ASP․NET Core 到 IIS 的時候,就一定需要這個檔案。今天這篇文章我就來說說,如何在執行 dotnet publish 命令的時候,自動調整 ASP․NET Core 部署到 IIS 的 web.config 內容。

... 繼續閱讀 ...

透過瀏覽器瀏覽網站時到底 URL 長度有沒有一定的限制

我們一般在規劃設計一個網站時,通常都不會特別考慮一個網頁的 URL 到底會有甚麼上限,因為一個正常人絕不會把網址設計的很長很長,對吧?但有時候我們希望把一些網頁的狀態保存在網址列上,方便用戶將網址加入書籤,下次回來時就可以看到原本的資料,這時就有可能會讓網址變的很長。這個問題每隔一段時間就會有學員提出,今天我想透過這篇文章跟大家說說這個 URL 的長度限制。

... 繼續閱讀 ...

如何啟用 ASP.NET Core 6.0 部署到 IIS 的陰影複製 (Shadow-copying) 功能

ASP.NET Core 可以部署至 IIS 網站伺服器,但一直以來都有一個毛病,那就是 ASP.NET Core 網站在運行的過程中,許多 *.dll 檔案會被鎖定,導致這些檔案無法順利更新,必須暫時關閉應用程式集區才能順利對網站進行部署。從 ASP.NET Core 6.0 開始,ASP.NET Core Module 包含了一項實驗性功能名叫 陰影複製(Shadow-copying),這個功能可以徹底解決網站運行中無法部署程式的問題。

... 繼續閱讀 ...

如何正確地發行 ASP.NET Core 網站到遠端 IIS 站台

我們最近有專案需要發行一個用 ASP.NET Core 5 開發的網站,有經驗的人應該知道,當網站正在執行時,尤其是 Windows 作業系統,過程中所有 *.dll 檔案都會被鎖定,無法成功覆蓋檔案,以致於自動部署失敗。今天這篇文章我打算來分享幾個常見的作法,以及我認為最好的作法。

... 繼續閱讀 ...

如何在 Windows Containers 安全的調整 IIS 站台設定

當你想要對 IIS 站台調整許多設定,又怕調整到一半突然出問題,這時候會殘留許多調整到一半的設定,如果想要做到 IaC (Infrastructure as code) 自動化,這個問題就必須被解決。還好 IISAdministration 模組中有提供「交易」相關的 Cmdlets 可用,本篇文章就來說說如何使用它。

... 繼續閱讀 ...

如何在 Windows Containers 快速建立 IIS 站台與應用程式集區設定

IIS 是一個相對穩定的產品,從 Windows Server 2016 推出 IIS 10.0 之後,版號就不再更動,而且每次作業系統釋出新版本也只會微幅新增功能,因此整體架構並沒有任何變化。本篇文章將分享我在管理 IIS 容器的一些心得與技巧。

... 繼續閱讀 ...

如何在 Windows Containers 的 aspnet 容器新增額外的 IIS 角色服務

官方的 mcr.microsoft.com/dotnet/framework/aspnet:4.8 容器映象,已經預先安裝好 Web Server (IIS)ASP.NET 4.8 角色服務,但預設只有啟用一些最常見的 IIS 功能,如果你現有的 IIS 站台想要容器化,但又需要額外安裝角色服務的話,那你就可以參考本篇文章說明。

... 繼續閱讀 ...