[實作筆記] 怎麼建立一個網站?(三) - 簡單讓網站升級使用HTTP/2

應該知道的事

  • HTTP/1.1 是目前被應用得最廣泛的通訊協定,也可以說是最成功的一個
    • HTTP/1.1 基於 TCP,需要三方交握。
    • HTTP/1.1 本身存在得需多問題,安全性、效率等…。
  • HTTP/2 可以有效改善 HTTP/1.1 的缺點,而且可以向下相容
    • 主流的瀏覽器都開始支援了。
    • 只要設定好 Web Server,Client 端看使用的瀏覽器支不支援
  • 一流公司制定標準,二流作品牌,三流賣技術,四流作產品
    • HTTP/2 是源自 Google 的 SPDY。
    • Google 下一代 QUIC 推動中。
  • HTTP/2 並不強制加密(HTTPS)
    • 在主流瀏覽器為了向下相容,保留了 80 port 的 HTTP/1.1 通訊協定,用 443 port 實作 HTTP/2。
    • 所以還是要走 HTTPS,所以需要安全性憑証。
    • 安全性憑証要錢(現在也有免費的)。
    • cloudflare提供免費的安全性憑証。

前置作業

  1. 你要有cloudflare帳號。
  2. 看過我之網站的設定,簡單說就是一個 github page 與 透過 OpenShift 這個 PaaS 服務建立的網站。

配置

  1. cloudflare 設定 DNS,在指定的 domain 下,設定為「DNS and HTTP Proxy(CDN)」。
    設定為「DNS and HTTP Proxy(CDN)」
  2. 設定 Page-Rules,這個是為了開啟 SSL 1. 設定SSLFlexible,輸入*.username.com/*
    這個時候你就可以瀏覽https://blog.username.com/,但同時也可以瀏覽http://blog.username.com/
    我希望 HTTP 能自動跳轉 HTTPS,這部份如果是 Node 建立的網站,我可以用程式作轉導,
    但是如果是 github page 建立網站,就要再仰賴 cloudflare 了。
  3. 設定 Page-Rules,這個是為了開啟 SSL 1. 設定ALWAYS USE HTTPS,輸入http://*.username.com/*
    設定為「DNS and HTTP Proxy(CDN)」

設定完大致如下,順利的話幾分鐘就生效了。
生效

這時候瀏覽 http://blog.username.com/ 就會轉導到 https://blog.username.com/ 了 。

檢驗

使用 support HTTP/2 的瀏覽器,瀏覽網頁,觀察其 protocol 。
HTTP/2

系列文章

參考

(fin)

Please enable JavaScript to view the Gitalk. :D
Please enable JavaScript to view the LikeCoin. :P
Please enable JavaScript to view the LikeCoin. :P