自從去年中,全球最大搜尋引擎 Google 宣告要將網站安全性也列入網站排名的演算法參數後,許多網站與部落客們紛紛替自己網站申請一組 SSL 安全通訊加密憑證(這是 Google 直接了當點出的重點之一)。
SSL 是安全通訊協定(Secure Sockets Layer)的簡稱,用途是讓使用者在網站上的輸入、輸入訊息都得以進行 128 或 256 位元的密碼加密,保護數據隱私安全。
今天這篇文章內容要談的就是如何在 WordPress 網誌系統上,啟用 SSL 安全通訊協定。
當然,如果你只是一位單純提供知識內容的部落客,你一定會在心中納悶自己網誌有什麼好加密的?答案是,還真的沒有。不過既然 HTTP 有沒有 S 會直接引響到你的部落格排名,那就乖乖加吧(但影響也不大就是了)。
在開始實際設定 WordPress 網誌系統前,你必須先擁有一個 SSL 安全憑證。取得 SSL 憑證的方式有三種來源,自簽(SSL Self-Signed Certificate)、免費(Free SSL)以及付費。詳細資訊請參考維德另一篇《取得 SSL 安全憑證教學,替網站/部落格強化安全性與排名》的專文介紹。
在取得 SSL 安全憑證並載入作業系統後,接下來就要開始設定伺服器與 WordPress 相關設定。
WordPress 啟用 SSL 安全憑證步驟教學
步驟一,開啟 WordPress 控制台,開啟「設定」選單下的「一般」選項;
步驟二,參考下圖一,將 WordPress 位址(URL)以及網站位址(URL)中的網址前端都改寫為 https。
只要伺服器端的 Proxy 沒有設定錯誤,這時候開啟以 https:// 開頭的網站頁面應該就能正常顯示。但是大家應該會發現頁面上似乎東缺西少了些一些圖片。原因在於這些圖片的原始網址還是「http」,因此在網站上已經無法正常連結。即使有些圖片看起像是還可以打開,但是那對系統來說都是不穩定的因素,因此我們必須消除這些錯誤。(備註:之後新增的檔案會自動以 https 開頭做顯示。)
因此,接下來我們要開始修改網站上所有仍保留舊 http 開頭的媒體檔案(Media Files)與內部鏈結(Internal Links)。
步驟三,開啟 phpmyadmin,在對應網站的資料庫選項中,開啟右側畫面的「SQL」頁面。該頁下方有一處「在資料庫________執行 SQL 查詢」的指令框,請將下面語法貼上後按下執行按鈕(如下圖二)。
UPDATE wp_posts
SET post_content = ( Replace (post_content, 'http://', 'https://') )
WHERE Instr(post_content, 'jpeg') > 0
OR Instr(post_content, 'jpg') > 0
OR Instr(post_content, 'gif') > 0
OR Instr(post_content, 'png') > 0;
當變更作業結束後會出現修改結果。
步驟四,進入伺服器作業系統,修改網站目錄下的「.htaccess」檔案,並添加下列指令碼,將所有連結強迫替代成 https:
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R,L]
所有在 WordPress 從 HTTP 變更為 HTTPS 的作業到這邊差不多告一段落,接下來就是換個瀏覽器,甚至是換部電腦,仔細檢查網站是否能正常瀏覽囉。
發佈留言