在 JavaScript 中,您可以使用以下程式碼片段來強制將網站轉址到 HTTPS,同時避免產生無限迴圈:
// 檢查是否為 HTTPS,如果不是,則進行轉址
if (window.location.protocol !== "https:" && window.location.hostname !== "localhost") {
// 建立 HTTPS 版本的 URL
var httpsURL = "https://" + window.location.hostname + window.location.pathname + window.location.search;
// 進行轉址到 HTTPS
window.location.href = httpsURL;
}
此程式碼首先會檢查目前的網址是否使用 HTTPS,如果不是,則會建立相同網域、路徑和查詢字串的 HTTPS 版本 URL。然後,它會使用 window.location.href
將網站轉址到 HTTPS。注意,我們在檢查協定和主機名時,將 localhost
排除在外,以避免在本地開發環境中觸發轉址。
請確保將這段程式碼置於 <script>
標籤中,並放置於網頁的 <head>
部分,以確保在載入任何其他內容之前執行。這樣可以最大程度地減少可能的問題,同時確保網站正確轉址到 HTTPS。