很多網站如果不是https開頭,又有用到input= password
google就會給你的不安全的警告,在網址列
使用者看到就會怕怕,PM就會靠么,工程師就會頭很大
還好線上機器管理者多會設定好
所以多數時候local測試環境其實有沒有https沒差
就是有時候一些API會給你挖洞,http正常,切到https就出包
這時候本機沒有https可以測試就會很崩潰
「萬一直接在正式機上搞,會不會壞掉」
於是本機測試環境的ssl憑證設定勢在必行
以下是在 docker 中 使用 nginx 自訂ssl的方法(mac)
以上就是設定,之後應該會把 docker 的設計寫成一系列文章,之後啦...
google就會給你的不安全的警告,在網址列
使用者看到就會怕怕,PM就會靠么,工程師就會頭很大
還好線上機器管理者多會設定好
所以多數時候local測試環境其實有沒有https沒差
就是有時候一些API會給你挖洞,http正常,切到https就出包
這時候本機沒有https可以測試就會很崩潰
「萬一直接在正式機上搞,會不會壞掉」
於是本機測試環境的ssl憑證設定勢在必行
以下是在 docker 中 使用 nginx 自訂ssl的方法(mac)
- 新增放憑證的資料夾(.ssl)cd; mkdir .ssl
- 取得憑證放到剛剛的資料夾中 (網址範例為ray247k.local)
openssl req -newkey rsa:2048 -x509 -nodes -keyout .ssl/ray247k.local.key -new -out .ssl/ray247k.local.crt -subj /CN=ray247k.local -reqexts SAN -extensions SAN -config <(cat /System/Library/OpenSSL/openssl.cnf <(printf '[SAN]\nsubjectAltName=DNS:ray247k.local')) -sha256 -days 3650sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain .ssl/ray247k.local.crt
完成之後資料夾中會有兩個檔案 - 設定nginx
- yml檔中把憑證volumes進nginx 的 container
- yml檔ports 增加 443:443 (https用的port)
- nginx vhost 的 conf檔中加入以下內容
# 加入 SSL 設定
listen 443 ssl default_server;
listen [::]:443 ssl default_server;
# 憑證與金鑰的路徑
ssl_certificate /ssl/share.crt;
ssl_certificate_key /ssl/share.key; - 重啟nginx
- 完成,可以使用https訪問網址
以上就是設定,之後應該會把 docker 的設計寫成一系列文章,之後啦...
留言
張貼留言