Quantcast
Channel: 小惡魔 – 電腦技術 – 工作筆記 – AppleBOY
Viewing all articles
Browse latest Browse all 325

將 wordpress 強制使用 SSL 連線

$
0
0
Letsencrypt

繼上篇介紹 Letsencrypt 開放申請免費 SSL 憑證,就把我的 Blog 強制使用 https 連線,Wordpress 強制使用 SSL 連線有幾個步驟需要注意,底下會是搭配 Nginx 相關設定,建議如果有裝任何 Plugin,都先進去後台暫時關閉。Nginx 1.9.5 之後有把 http2 模組加入,所以本篇會是以設定 http2 為主,當然跟 spdy 設定一樣,只是換個名字而已。

資料庫相關設定

這邊可以從 WordPress 後台修改,或者是從資料庫內的 wp_options 直接改 siteurlhome 這兩個 value。

WordPress 設定檔

請打開 wp-config.php 加入底下設定

define('FORCE_SSL_LOGIN', true);
define('FORCE_SSL_ADMIN', true);

設定 Nginx

將原本 80 port 設定 301 轉到 https

server {
  # don't forget to tell on which port this server listens
  listen 80;

  # listen on the www host
  server_name blog.wu-boy.com;

  # and redirect to the non-www host (declared below)
  return 301 https://blog.wu-boy.com$request_uri;
}

server {
  listen 0.0.0.0:443 ssl http2;

  # include ssl config
  include ssl/blog.conf; 

  ....
}

比較注意的是,如果 Nginx 有設定 fastcgi_param HTTPS off;,請務必移除,否則你的 WordPress 網站會產生 Loop。最後附上在 SSllabs 驗證的截圖

Screen Shot 2015-12-18 at 1.25.30 PM


Viewing all articles
Browse latest Browse all 325