iT邦幫忙

0

什麼!開發階段就要加上SSL憑證

最近專案需要對Facebook第三方登入相關的程式碼Debug,
但是最近Facebook加強了第三方登入的安全性,
要求登入後的網站必須加上SSL,
所幸得到10大神的開示找到了一個輕鬆自簽憑證的套件 -- mkcert

10大神的指示


以下操作皆是 mac 環境

  1. 透過brew安裝
$brew install mkcert
$brew install nss # if you use Firefox
  1. 生成 SSL 憑證
$mkcert -install
$mkcert example.com
  1. 有了憑證之後,我們就可以設定nginx
    #HTTPS server
   
       server{
         server_name example.com;
         listen 80;
         listen 443 ssl;
         ssl_certificate example.com.pem;         #檔案的絕對位置
         ssl_certificate_key example.com.pem; #檔案的絕對位置
         location / {
          proxy_pass http://localhost:port; 
          proxy_set_header   Host $host;
         }
       }
  1. 最後別忘了在 /etc/hosts 增加:

    127.0.0.1 example

這樣就可以讓Facebook成功轉址回 http://example.com

以下純屬抱怨:Facebook明明可以設定專案是否開發完成,為何不容許讓開發中的非開放專案,轉址回localhost就不用憑證,導致開發者還必須這樣自欺欺人


尚未有邦友留言

立即登入留言